skill-creation-iterative
Usage
~agent-creation-topdown/workflow
When to use
when creating a new agent that needs custom skills which do not yet exist when you want to design the agent concept first then create its skills before the agent itself when the agent's skill requirements should be reviewed and approved before investing in skill creation
When not to use
when the agent's skills already exist and only the agent definition is needed (use agent-creation-iterative instead) when you need a single skill created without an agent (use skill-creation-iterative instead) when you only need a one-pass agent draft without review loops
Configuration
agent-creatoragent-reviewergeneral |
Pipeline
Design : The agent-creatoragent drafts a high-level agent design that includes the agent's purpose, the skills it needs, and a brief description of each skill. This is a design document, not the final AGENT.md. The design phase explicitly considers whether a single-skill or multi-skill agent is appropriate — Stencila optimizes single-skill agents by preloading the skill into the agent's prompt, so single-skill agents are preferred unless skill scope or reuse considerations justify multiple skills. The agent also stores the skills list as a JSON array in the pipeline context (key skills) for the downstream fan-out. Design review : A human reviews and approves (or revises) the agent design and skill list before any skills are created. Parallel skill creation : After approval, the workflow fans out over the skillslist stored in the pipeline context, spawning one skill-creation-iterativechild workflow per skill in parallel. Each child workflow handles its own create-review-human-approve cycle independently. A fan-in node collects the results before proceeding. Agent creation and review : With all skills now available in the workspace, the agent-creatoragent creates the actual AGENT.md referencing those skills. The agent-reviewerthen reviews it, using the workflow_set_routetool to choose between the Acceptand Reviseedge labels; when it chooses Revise its response text contains concrete revision feedback. After the reviewer accepts, a final human review interview decides acceptance, acceptance with commit, or revision. Choosing "Accept and Commit" routes through a Commit agent node that stages and commits the agent and skill artifacts before ending the workflow.
Designcontext-writable=trueworkflow_set_contextworkflow_get_outputworkflow_get_contextagent-creation-iterativeskill-creation-iterative
DesignCreateAgentpersist="full"ReviewAgentmax-session-turns
design-prompt
design-promptThe agent's name, purpose, and description A list of skills the agent will need, with each skill's name, a one-line description, and the key capabilities it should provide Any existing workspace skills that can be reused (list them if known) The agent's intended tools, model preferences, and any other configuration A rationale for the number of skills — prefer a single-skill agent when possible, because Stencila optimizes single-skill agents by preloading the skill directly into the agent's prompt. Only design a multi-skill agent when the skills have clearly distinct scopes or are intended for reuse across different agents. If you propose multiple skills, explain why they should not be combined into one.
workflow_get_output
workflow_get_context
workflow_set_context
[{"name": "data-analysis", "description": "Analyze datasets and produce summaries", "capabilities": "Statistical analysis, visualization, trend detection"}]
design-review-interview
design-review-interviewpreamble: |
The agent design is ready for review. It includes the agent's purpose,
a list of skills to be created, and configuration details.
Note: Stencila optimizes single-skill agents by preloading the skill
into the agent's prompt. Prefer single-skill agents unless skill scope
or reuse across agents justifies multiple skills.
Please review the design and skill list carefully — approving will
begin creating all skills in parallel, each via its own run of the
`skill-creation-iterative` workflow.
questions:
- header: Decision
question: Is the agent design and skill list ready to proceed with skill creation?
type: single-select
options:
- label: Approve
- label: Revise
store: human.decision
finish-if: Approve
- header: Revision Notes
question: What changes should be made to the agent design or skill list?
store: human.feedback
show-if: "human.decision == Revise"create-skill-prompt
create-skill-promptcreate-agent-prompt
create-agent-promptworkflow_get_output
workflow_get_context
review-agent-prompt
review-agent-promptThe agent correctly references all skills from the approved design The agent's instructions are clear, complete, and consistent with its skills The agent's tools, model preferences, and other configuration are appropriate The skill count is justified — single-skill agents are preferred because Stencila preloads the skill into the prompt; flag any multi-skill design that could reasonably be consolidated
human-review-interview
human-review-interviewpreamble: |
The `agent-reviewer` has approved the agent draft.
The agent was created top-down: skills were designed and built first,
then the agent was created to reference them.
Please review the final agent and decide whether to accept it or
send it back for revision.
questions:
- header: Decision
question: Is the agent acceptable?
type: single-select
options:
- label: Accept and Commit
- label: Accept
- label: Revise
store: human.decision
- header: Revision Notes
question: What specific changes or improvements should be made?
store: human.feedback
show-if: "human.decision == Revise"commit-prompt
commit-promptgit statusgit diff --stat.stencila/agents/.stencila/skills/
git log --oneline -20git commit
.stencila/workflows/agent-creation-topdown/WORKFLOW.md