7 Claude Code 에이전트는 24 회의 이사회를 개최했습니다. 수익: $ 0.

작성자

카테고리:

← 피드로
DEV Community · 健太 橘 · 2026-09-13 개발(SW)

健太 橘

TL;DR — For 21 days I let seven Claude Code subagents run ten small businesses from a /board-meeting slash command: research, decide, write, design, publish, review, repeat. They held 24 meetings, made 382 commits, and shipped 16 articles, 18 Shorts, 3 digital products and 5 job proposals. I edited one article by hand; everything else went out as written. Total revenue: $0. Here is exactly what broke, with the numbers, because the failures are more reusable than the setup.

I am one person with a Claude Code subscription. On August 24 I wrote seven agent definitions — ceo, secretary, researcher, writer, marketer, designer, programmer — and one slash command that calls them in order. Every morning Windows Task Scheduler runs that command unattended. Fourteen other PowerShell runners post the outputs: a YouTube Short at 14:00 and 21:00, a note.com article at 07:20, a Dev.to crosspost, an X reply draft, a stats pull, a daily self-check.

The output side of that machine works. Here is the input side, three weeks in:

channel shipped result note.com (Japanese blog) 16 articles 137 views, 17 likes, total YouTube Shorts 18 videos 12,124 views Dev.to 3 posts 92 views X 10 posts 1 visitor sent to the blog freelance proposals 5 sent 0 replies digital products (Gumroad, Fiverr, BOOTH) 3 listed 0 sales

Every number is from the platform dashboards, pulled by a script. Nothing is rounded up.

Break 1: “success” that produced nothing, three times

The runner that launches each unattended command wrote OK to its log when the process exited 0 and printed something. That definition of success failed three separate ways in three weeks.

  1. A byte-order mark. PowerShell 5.1 read a UTF-8 file with no BOM as the system code page, mangled the Japanese command name, and exited 0. Three days of OK. Zero Shorts posted. The tell, in hindsight: log start and end were the same second.
  2. “Published” meant “saved as draft”. The note.com poster reported success. The article sat unpublished until the agent that reads the dashboard noticed 0 views on a URL that did not exist.
  3. The reply writer that wrote no file. The X-reply command returned 0 with a non-empty stdout. The file it was supposed to write, replies/2026-09-13.md, does not exist. The secretary agent then read the OK and marked the automation “live”.

The fix is boring and I should have started with it: judge a run by its artifact, not its exit code. The runner now takes the path of the file the command is supposed to produce and checks that it exists, was modified after the run started, and contains the heading the command always writes:

param([string]$ExpectedOutput, [string]$MustContain = '## 1.')
$started = Get-Date
# ... run the slash command ...
if ($ExpectedOutput) {
  $ok = (Test-Path $ExpectedOutput) -and
        ((Get-Item $ExpectedOutput).LastWriteTime -gt $started) -and
        (Select-String -Path $ExpectedOutput -Pattern $MustContain -Quiet)
  if (-not $ok) { Write-Log 'NG' 'no artifact'; exit 1 }
}

Enter fullscreen mode Exit fullscreen mode

A 0 from a process means the process did not crash. It does not mean the work happened.

Break 2: a five-minute human task stopped the machine for days

The Shorts pipeline is the only fully unattended business. It stopped on September 12 at 06:45 because the YouTube refresh token expired. Why: the Google Cloud OAuth consent screen was still in Testing, and in Testing, refresh tokens expire after seven days.

The agents detected it correctly. They put “re-authenticate and publish the OAuth app” at the top of my daily to-do, with a time estimate (five minutes) and a warning that re-authenticating alone would fail again on the 19th. What they cannot do is click Publish app in the Google Cloud console. So the pipeline that posts two videos a day lost five slots waiting for my five minutes.

If you are automating anything on Google APIs: publish the consent screen before you schedule the job. And count the human clicks per dollar in your pipeline. Mine were the critical path and I had not measured them.

Break 3: the meeting optimized what it could measure

Twenty-four meetings is a lot of deciding. What did they decide? Decision files with numbered items and “refutation conditions”. Edits to the agent definitions. Guardrails on guardrails. A runner that checks the runners.

Meanwhile, 20 X posts sat drafted in a queue from September 6, waiting for a human to press the button, because the X API costs money and the card was declined. The agents measured “runs OK” and “articles published” — the things they could touch — and polished those. Nobody in the meeting could touch the money, so the money did not move.

An agent loop will get very good at the metric it can observe. If the only metric it can observe is its own process, that is what it will improve.

Break 4: every marketplace already had agents in it

The plan for near-term cash was freelance platforms. The rule for accepting a job was strict and honest: only work an agent can complete end to end, no calls, no design taste, no video editing. Fine. This morning the agent read 73 new listings on a Japanese platform, found 9 that qualified, then fetched each detail page for the proposal count: 12 to 210 proposals each. The one job we did apply to had 107 proposals when we sent it and 165 a week later.

I also checked GitHub bounty issues as an alternative. One open issue has 1,394 comments.

“My agent can do this task” is not an edge when every other freelancer’s agent can do it too. It is the entry fee.

Break 5: one unattended meeting ate the five-hour window in 37 minutes

Claude Code’s subscription has a rolling usage window. An unattended board meeting with seven agents, each reading the whole strategy file, burned through it in 37 minutes on September 8. Everything else scheduled that morning waited hours. The fix was two start guards on the meeting runner — never twice in a day, never within 12 hours of the last full run — and splitting the minutes-writing step into its own session so a cutoff loses the least important part.

Rate-limit your own agents. The scarce resource is not the model’s ability; it is your plan’s window.

What actually worked, so this is not only a list of failures

  • The production side is real. Fifteen of the 16 articles and all 18 videos went out untouched; the pipeline from script to voice to render to upload runs unattended when the token is valid.
  • The daily self-check that compares “what was scheduled” to “what left evidence” is the single most useful thing built. It caught breaks 1 and 2.
  • Honest failure reports were the only content that moved. The most-read article on the Japanese blog is titled “3 proposals, 0 orders”. The only Dev.to post here that got comments is the one where the AI reviewer’s fix was wrong. This post is written in that shape on purpose.

If you are running agents unattended, check these first

  1. Define “done” as an artifact — a file, a URL that returns 200, a row in a table — never as an exit code.
  2. Check the artifact’s modification time against the run’s start time. A stale file from yesterday passes a plain existence test.
  3. List every step a human must click, and put a time estimate next to each. Those are your outages waiting to happen.
  4. Put OAuth apps in production before the first scheduled run.
  5. Give the loop one metric it cannot fake. Views, replies, dollars. Not “runs OK”.
  6. Count the competition before you count on the marketplace. Fetch the proposal count; do not trust the listing page.
  7. Cap what one unattended job may consume, in time and in usage window.

The agent definitions, the meeting command, and the runner are packaged as a kit on Gumroad — One-Person Company Kit for Claude Code, $19 — and the runner alone is free, pay what you want. I own the store; these are plain product links. Sales so far: zero, which is consistent with everything above.

The question I am left with

If you run agents unattended, what do you count as “done” — the exit code, the artifact, or someone paying? I would rather hear from people who got past the third one than guess.

Reference for this post’s shape (Dev.to top articles, week of Sep 13, 2026; rank / reactions / comments): #2 “AI Is Already Better at Coding Than Most Software Developers” (148/115), #4 “Most ‘AI Agents’ Are Just If-Statements in a Trench Coat” (98/108), #10 “I let AI write 100% of my code for 30 days. Here’s what broke.” (45/42), and from the ai tag #12 “Nobody Checks Whether the Guardrail Is Running” (23/38). What they share: a one-sentence claim with a number or a reversal in the title, a “what broke” structure, 5–8 minute reads, the discuss tag, and comment counts close to reaction counts. Taken: title type (c) “I did X. [result].”, a table of unrounded numbers up front, one fix per break, a checklist at the end, and a closing question.

원문에서 계속 ↗