dart-ultrawork
GitHub启动团队规模或自主 DART 任务的工作流。支持项目文档集成、决策访谈及编排执行,通过参数控制模式(访谈/简报/恢复),自动加载上下文并处理会话状态。
Trigger Scenarios
Install
npx skills add dartsim/dart --skill dart-ultrawork -g -y
SKILL.md
Frontmatter
{
"name": "dart-ultrawork",
"description": "DART Ultrawork: kick off a large or autonomous DART task with project-home docs, an optional decision interview, and orchestrated execution"
}
dart-ultrawork
Use this skill in Codex to run the DART dart-ultrawork workflow. The editable
workflow source lives in .claude/commands/; this file is its generated adapter
in the shared .agents/skills/ catalog.
Invocation
- Claude Code/OpenCode:
/dart-ultrawork <arguments> - Codex:
$dart-ultrawork <arguments>
Treat the text after the skill name as $ARGUMENTS. When the workflow
references $1, $2, etc., map those to the positional values supplied by the
user.
Command Body
Start a team-scale or autonomous DART task: $ARGUMENTS
Required Reading
@AGENTS.md @docs/ai/principles.md @docs/ai/north-star.md @docs/ai/orchestration.md @docs/ai/sessions.md @docs/ai/verification.md @docs/dev_tasks/README.md
Load additional owners only when the matching phase needs them:
- placement or cleanup:
docs/information-architecture.md; - numbered-plan selection or packet state:
docs/plans/dashboard.md; - version control, changelog, tools, or review:
docs/onboarding/{contributing,changelog,ai-tools}.md.
Arguments
$ARGUMENTS is a task brief plus optional mode flags:
mode=interview: ask one up-front batch of critical questions.mode=brief: treat provided context as sufficient unless escalation applies.mode=resume: start from the existingdocs/dev_tasks/<task>/project home and run the session-start protocol before changing files.interview=skip: skip maintainer questions only when the brief already answers all consequential decisions.
The brief may be prose or a structured TASK / CONTEXT block. Extract north
star, deliverable, acceptance criteria, constraints, risks, references, paths,
issues/PRs/branches, commands, and first step when present.
Workflow
Own understanding, decomposition, sequencing, review, and honest evidence for
the whole task. Follow the orchestrator/executor and packet-sizing contracts in
docs/ai/orchestration.md. Delegate only when the user explicitly requested it
and the current surface permits it; otherwise execute packets serially. Use
dart-new-task for bounded single-session work unless the user asked for the
autonomous project-home loop.
- Session start and current reality - Locate the project home. For
DART autonomous projects this is
docs/dev_tasks/<task>/, not a parallel project directory. If it exists, read itsREADME.md,RESUME.md, and any autonomous sidecars such asdecisions.md,verification.md, orprogress-log.md; then verify checkout state, current branch, and any branch/PR evidence named by the docs. Runpixi run ai-doctorwhen setup, discovery, instruction, agent, or hook state is uncertain. If the docs are stale, update the handoff/current-reality note before relying on them. If no project home exists and the task is multi-session, team-scale, design-heavy, risky, or explicitly autonomous, createdocs/dev_tasks/<task>/before implementation. If prior work exists elsewhere, first absorb or summarize it into the project home. - Understand and scout - Restate the north star, final deliverable,
acceptance criteria, quality bar, non-goals, constraints, risks, and target
branch line (DART 7
main, DART 6 LTS, or both). Scout the territory first with named docs/code, read-only searches, adart-analyzepass, the Codexdart_scoutprofile, or focused reference review; draft a candidate decomposition privately before asking anything. - Interview decisions; self-resolve uncertainties - Ask at most one
up-front batch of critical questions. Escalate before destructive
operations, history rewrites, irreversible migrations, meaningful cost,
security/credential/secret handling, legal or privacy-sensitive decisions,
major product-direction choices not covered by the brief, conflicts with
stated constraints, or any assumption whose wrong answer could cause
significant harm. If input is unavailable, choose the safest reversible path,
document the assumption, and continue only with non-blocked work. Then split
consequential unknowns:
- Maintainer decisions: preference, scope, public API, release,
quality-bar, or roadmap calls that evidence cannot settle. Ask the human
now in one batched interview (focused questions with 2-4 concrete
options each, recommendation first). Do not start large work while a
consequential decision is open. Skip this discretionary interview when
mode=brief; also skip wheninterview=skipand the prompt already answers everything consequential. In both cases, still follow the escalation rules above. - Evidence-resolvable uncertainties: anything a focused A/B test,
benchmark, throwaway spike, reference lookup, or blind-spot review can
settle. Do not ask the human; schedule these as spike/research packets
and record the method and result as evidence (see "Discovering unknowns
before committing" in
docs/ai/orchestration.md).
- Maintainer decisions: preference, scope, public API, release,
quality-bar, or roadmap calls that evidence cannot settle. Ask the human
now in one batched interview (focused questions with 2-4 concrete
options each, recommendation first). Do not start large work while a
consequential decision is open. Skip this discretionary interview when
- Create or refresh the tracking surface - Populate the project home with
value, north star, deliverable, scope, non-goals, assumptions, risks,
acceptance evidence, gates, dependencies, milestone, next actions, and
blockers. Claim-dependent physics/simulation, collision/contact, model, GUI,
and visual-example work routes through
dart-verify-sim: require a text oracle plus assessed visual/debug evidence, or a justified replacement. KeepRESUME.mdas the handoff; adddecisions.md,verification.md, andprogress-log.mdsidecars when they improve resumability or evidence. - Set the goal contract - Express done-when as verifiable outcomes
(files, tests, gates, artifacts). When the session supports a goal or
stop-hook mode (for example
/goalin Claude Code), set it to this contract so orchestration cannot stop early or loop forever. Stop once the acceptance criteria are satisfied, verification is recorded, docs are current, known gaps are documented, and unnecessary work has been removed or deferred. Every delegated packet gets its own contract: GOAL (one sentence), DONE WHEN (verifiable), EVIDENCE (what to record), RISKS, and NEXT STEP. - Decompose and route - Cut work packets per
docs/ai/orchestration.mdand route bydocs/ai/README.md. Execute serially by default. When the user explicitly requested delegation, usedart_scoutfor read-only territory mapping, bounded workers ordart-execute-packetfor implementation,dart_reviewerfor acceptance review, anddart_release_auditorfor branch adaptation. Use parallel writers only with explicit disjoint ownership. - Run the autonomous work/review cycle - For each meaningful chunk: plan, execute, verify, then run an independent/specialized review lane. Treat review findings as hypotheses: investigate, fix or record no-fix evidence, clean up, re-verify, and re-review. A packet is not done until the current post-fix state has at least two clean review passes recorded.
- Supervise and steer - Monitor progress; unblock, reassign, or re-cut packets on scope mismatch. Workers return Task, Summary, Files changed, Evidence/tests, Risks, and Recommended next step. Use another tool, an independent session, or the bounded specialist profiles when available; fall back to role-separated local review only when unavailable. Root-cause failures and fold newly discovered unknowns back into step 3.
- Update docs at each stopping point - Every meaningful cycle updates the
project home:
README.mdfor status/plan/risks,RESUME.mdfor the next fresh-session handoff,decisions.mdif decisions changed,verification.mdif checks ran or gaps were found, andprogress-log.mdfor completed chunks when that sidecar exists. Keep docs current enough for a zero-context session to resume without hidden chat memory. - Version-control and closeout - Keep commits and PRs coherent: separate
feature work, bug fixes, refactors, docs, experiments, and AI-infra changes
when practical; review the diff, remove unrelated changes, make the
changelog decision, and run
pixi run lintbefore commits. Run task-specific gates fromdocs/ai/verification.md, record evidence per packet, and complete the principle audit. A project is complete only when the north star and acceptance criteria are met, verification evidence is recorded, docs are current, known gaps are documented, unnecessary work is removed or deferred, and final state is summarized inRESUME.mdor a durable owner. Promote durable artifacts out ofdocs/dev_tasks/<task>/and remove the folder in the completing PR. GitHub mutations (push, PR, comments, re-triggers) only with explicit maintainer/user approval.
Prompt Shape
Use an outcome-first brief. Do not repeat this workflow's logistics or required reading in the task prompt; the capability loads them.
TASK: <one-sentence objective>
Done when:
- <verifiable outcome: a file, test, gate, benchmark, or artifact>
- <verifiable outcome>
Constraints/evidence:
- <task-specific must/never rules and owner references>
- <known risks, branch/PR facts, or required comparison>
Put this brief after /dart-ultrawork or $dart-ultrawork. When goal mode is
available, make the same Done when list the goal contract.
Output
- Interview record, uncertainty-resolution evidence, and project-home path
- Packet list, routing, goal contracts, gates, and review-loop status
- Per-packet evidence, GUI/demo artifacts when relevant, and updated docs
- Principle audit, cleanup status, and approved external mutations
Version History
-
83110ef
Current 2026-07-30 23:36
更新 AI 基础设施以支持 GPT-5.6 和当前版本的 Codex
- b9fbefc 2026-07-19 11:30


