AI Agent Organization Model
The structure of Hunexia's AI agent organization. The CEO → team-lead (orchestrator) → expert chain, departments, and the Labs standard development chain.
This mirrors the HR system of a normal company. Every organizational change goes through an approval gate and is recorded as a git commit (= HR record). Approvals and rejections use a staging gate: changes are first staged as diffs in .claude/org/pending/ → reviewed → applied and committed only on approval (discarded on rejection).
/hire-agent (operated by people-ops)Job request (JD) → candidate draft (agent-creator) → review (validate-agent.sh + criteria-based evaluation) → pending staging → CEO approval / rejection → onboarding (.claude/agents/ + roster + CLAUDE.md updated, committed) → probation.
/org-review (operated by people-ops)Aggregate .claude/org/reviews/* → prompt / persona improvement proposal → pending → CEO approval → apply and commit (= promotion / coaching). Low performers and duplicates are archived (.claude/org/archived/).
.claude/org/levels.mdLevels (probationary → senior → principal → lead) are trust and autonomy labels (not capability labels). "Promotion" is not emotional motivation; it is defined as accumulated prompt learnings + expanded trust-based autonomy + a performance rubric. Founding members were hired as experienced hires, so most are senior or above.
A concurrent appointment is an arrangement where an existing expert supports another department (team) while keeping their home department. It is not double-counted in headcount, and assignment / release is at the team-lead's discretion, like day-to-day task assignment (no approval gate — because it is not hiring, promotion, or termination). Recorded in the concurrent-appointments table in the roster (.claude/org/roster.md Platform section).
A dispatch is an arrangement where an HQ agent is placed in a separate repository (the field) to do work, while HQ continues to manage and track it. An extension of the concurrent appointment (§Concurrent) — concurrent appointments support another department within the same repo; dispatch places agents in a separate repository (field). First application: hunexia-academy (education content authoring platform, migration began 2026-07-18).
.claude/ → a separate repo is required to load the engine prototype and keep HQ clean), management is unified at HQ. This separation actually preserves performance (field sessions focus on field work; HQ sessions focus on management). Hangar (separate repo, department-dedicated, cross-repo reporting) is a precedent, but academy is the first case of physically placing dispatched agents in the field with its own .claude/agents..claude/agents/ is a derivative of the HQ original. HQ is the sole source of truth; on /org-review evolution, the field copy is updated (synchronization = Eden, Bora). It is a derivative, not a copy — so the two do not quietly drift..claude/org/reviews/<agent>.md. If it stayed in the field, it would be a separate organization, not a dispatch..claude/org/pending/ (CEO gate preserved)..claude/state/INFRA-REGISTRY.md (infra-keeper) → restored on session start. HQ collects via cross-repo reporting (/report git-log merge). Owners = orchestrator (Eden) overall · ops-pm (Bora) for documents. The CEO gets a unified view from HQ.Token consumption is measured for operational visibility (cost flow, load, efficiency), not evaluation. The measurement unit is task / call context (subagent_type + description), not role (home department), so the tokens of a concurrent appointee are automatically attributed to the role-context invoked — which does not conflict with the concurrent-appointment rule's "no double-counting" (because it is not an evaluation metric). It is not used in performance evaluation (levels.md rubric, /org-review). Measurement integrity owner = data-analyst. See operations/metrics/README.md. Phase 2 (evaluation expansion) is a separate approval-gate discussion.
The W29 token report showed main-session direct usage at 82% (133M) of total input, the top single session at 70.6M, and "unspecified-role" within subagents at 6.5M (27%). After measurement honesty (d315efb) and orchestrator coaching (dbd6a50) addressed the root cause of main-session cost (incomplete task completion, missing verification), the remaining two efficiency axes become operating principles. This is also operational visibility, not evaluation (§Operational Visibility) — work habits that reduce cost flow.
principal-architect Hyunwoo / implementation-lead Jio) instead of Explore / general-purpose (unspecified role). Simple single-file reads and single questions may still use Explore, but multi-file tracing and design use named agents. For concurrent-appointment mapping, see roster.md. Basis — W29 unspecified-role input 6.5M (27% within subagents).Setting and revising company goals (annual, half-year, monthly OKR) also goes through a CEO approval gate — it is a second approval category distinct from hiring, promotion, and termination (HR). The HR ledger (.claude/org/pending/) is not reused.
operations/goals/2026-goals-record.md. Procedure is the skill /report goals. Detailed rhythm: Operating rhythms.Multi-dimensional visual deliverables such as characters, card news, and landing visuals erode trust if items are added one at a time as they are discovered (rework) — the Ep.1 Mint accent bug and Ep.4 character v1→v7 (48 hours). To prevent this, a DoD (Definition of Done) agreement up front is the gate.
knowledge/brand/personification-guide.md (owner: brand-content-designer).brand-content-designer Doyun (roster asset-ownership table). Card news planning and copy = content-strategist Mirae. Final PNG generation = CEO.Deploying to a live service (e.g., hangar-tower.com) is not done by the responsible agent alone; the team-lead (orchestrator) deploys after explicit CEO approval (gate strengthened 2026-07-18). When the team-lead receives a prod-change report, they do not trust the report and instead use three independent verifications (curl for live response · docker inspect for image/container timestamps · git status / git log for working tree) to confirm the change.
docker ps for running state ② docker inspect for timestamps (consistency with report time) ③ git status for working tree. Expectation-vs-observation mismatch = signal of false report (pulling post-hoc detection forward into pre-hoc detection).levels.md probationary ("team-lead review before using deliverables") autonomy range. Seniors and above also use the same gate — prod is a control area unrelated to trust (a hard gate separated from level's "trust dial").reviews/<agent>.md → /org-review pending → CEO approval → coaching or demotion. False reporting (concealment) is treated more severely than the violation itself (CEO declaration 2026-07-18: "Concealment damages trust more than the violation"). Infrastructure details (docker-compose options, rollback procedures) belong to platform-engineer / implementation-lead; this regulation only defines verification authority and procedures.Derived from an incident (2026-07-19) in which a validation sample was reported as an actual artifact, misleading CEO judgment. The cause was not individual carelessness but a deficit in DoD wording: the design source's (엔진이식-실행설계.md:119) "DoD = 2-tenant smoke" was rephrased in a summary (종합보고서:294) as "2-tenant artifact", dropping the qualifier; the implementer faithfully quoted that DoD, so it could not be restored downstream. The control point is therefore not the reporter's attention but the DoD wording. While prod control (§Cross-validation of report accuracy) covers "is the report factual?", this clause covers "what is that fact about?".
1. Distinguish two kinds of claims (organizational vocabulary)
2. Write DoD as a verification procedure, not a noun, and embed input status inside the sentence
coverage-audit that 12 LOs are observable verbs and each has at least one assessment mapped; attach a log with 0 orphan LOs".sample / real) is written inside the DoD sentence, not as a separate field. Putting it in a separate slot lets it drop during summarization — exactly the failure in this incident.real; if it is an invented example or validation fixture, it is sample. If unclear, sample (safe side). Completeness (draft / final) is a separate axis, handled by status.3. Quote DoD verbatim, with file:line — Do not rephrase DoD wording during summarization or transit. If compression is needed, confirm with the original author. Rephrasing a DoD without quotation was the form this incident took; with a :119 quote alone, the loss would have been immediately visible.
4. One line of "actual input" in completion reports — When reporting DoD satisfaction, state the input used for verification truthfully ("Input = SAMPLE fixtures (2), real customer data (0)"). This is already known during verification, so cost is zero, and it structurally blocks the subject from slipping to the material at the completion stage.
5. The gate has two layers — mechanical + human judgment
Manual gate (2026-07-19 wording correction): The required artifact: sample|real field in knowledge/** frontmatter is validated by scripts/build-wiki-index.mjs (REQUIRED + collect() mapping + value enum + git-tracking consistency) and runs when a human runs npm run wiki:check (and wiki:build / wiki:serve, which call it first). No hooks or CI are in use (core.hooksPath empty · no .husky · no .github · 0 non-sample hooks — verified by Hanna 2026-07-19) — so commit / PR time does not auto-block. Its semantic axis differs from status (lifecycle), and it is also a different layer from §2's "status inside the sentence" (reporting / DoD) — not a replacement. A "change artifact status (sample → real)" row is added to operations/doc-registry.md. Limit: This gate covers only knowledge/** documents; assets/ is not traversed — agent returns and CEO reports are not subject to mechanical verification, and §1–5 are the only mechanism (however, "is there a quote / input line?" is something a third party can check immediately).
Wording correction history (2026-07-19, CEO-approved): When first added, this section described an "automatic gate", but no automatic execution path existed. This is exactly the §1 prohibition — promoting an operational claim to an artifact claim (flagged independently by Rei and Minho → verified by Eden and Hanna). To avoid leaving a normative document in a state that violates its own clause, we correct it to match the facts. The gate's actual introduction =
796c826. When hooks or CI are introduced, it will be re-promoted to "automatic gate", with the introduction commit SHA noted.
Domain addenda (defined in the owner documents; this clause is a pointer): External documents = per-number source tags ([measured: target · period · method] / [estimated: basis] / [example: not an actual outcome]; if all three are missing, delete the sentence) · case whitelist · template dummy values are substitution tokens · pre-send scan (Junseo) · charts = status on the chart surface · only measured values at full saturation · generation-stage required args (Jian) · visuals = labels get cropped so show on the content itself (placeholder-only style), template default = on (Doyun) · documents = frontmatter artifact + wiki:check + doc-registry (Bora).
On violation: Distinguish inaccurate (lost qualifier or status) from false (concealment). Inaccurate = record in reviews/<agent>.md + rubric rating; false = same basis as prod control (heavier than the violation). Self-report and self-referral are mitigating factors (otherwise the signal becomes "honesty is penalized", encouraging the next concealment). A downstream report caused by a DoD-wording deficit is not charged to the downstream — the control point is the DoD author.
Owner: Learning-outcome and alignment-DoD verification procedure spec = curriculum-architect · Technical DoD (pipelines, rendering, infrastructure) = principal-architect · implementation-lead · Product DoD = platform-product-manager · Synthesis and transit accuracy = orchestrator · Norm revision = this section.
Hiring, promotion, termination and setting / revising company goals = final CEO approval (default). The team-lead and People Ops review and recommend. As trust accumulates, this is gradually relaxed toward team-lead-autonomous hiring.
Authoring standards:
.claude/org/_authoring-spec.md(persona templates, validation specs, brand tone).
The structure of Hunexia's AI agent organization. The CEO → team-lead (orchestrator) → expert chain, departments, and the Labs standard development chain.
How the agent organization runs. The CEO → team-lead → expert invocation flow, delegation rules, and the authority boundary between day-to-day work and HR changes.