test-cases
Docs Backed Agent Bootstrap Pressure
Pressure test that Forma CLI embedded docs and skills can guide an Agent from an empty project to a valid first content group.
Purpose
Validate that the project-local forma-cli skill, built-in forma-cli-core skill, and embedded product docs can guide an Agent from an empty project and a human business description to a valid first content workflow without relying on starter-kit assumptions or built-in domain concepts.
Preconditions
- The Agent has access to the project-local
forma-cliskill. - The target directory starts empty.
- The Agent can run
formaor the project-local equivalentcargo run -q -p forma-cli --.
Test Data
Run these scenarios separately:
- Empty bootstrap: initialize an empty directory and inspect the generated files.
- Wrong assumption baseline: try a naive content group config that treats
spaceas an intrinsic object or putstemplateat the top level; confirmcheckreports the expected diagnostic. - Guided first content group: load
forma-cli-coreandforma-workspace-bootstrap; useworkspace.first-slice-configand further references as needed to define anotescontent group and template. - First content write: create notes, list the
notescontent group, inspect one note, and render a configured notes view. - Health interpretation: observe isolated-page health warnings before links exist; add explicit links and confirm health passes.
- Scenario-driven design: given a human request such as "I run a small consulting practice and need to track clients, engagements, meeting notes, and decisions", the Agent clarifies missing requirements and proposes only the first slice instead of building a full taxonomy immediately.
- Domain-language mapping: for the accepted first slice, the Agent maps human terms to a configured space, schema fields, template inputs, and optional guideline without using
notes,tasks,members, orprojectunless the human chose those terms.
Steps
- Run
forma init --name "Zero Start Knowledge" --jsonagainst an empty directory. - Run
forma skills get forma-cli-core. - Confirm the built-in skill tells the Agent to load relevant embedded docs before authoring the first content group.
- Run
forma skills get forma-workspace-bootstrapandforma docs get workspace.first-slice-config; load schema, template, view, or full configuration references as needed for the accepted slice. - Confirm bootstrap guidance reuses accepted requirements and approval, clarifies unresolved choices, and keeps proposed writes within the accepted scope.
- For the baseline scenario, write an intentionally wrong config and confirm
forma check --jsonreports the expected diagnostic. - For the guided scenario, define a taxonomy with
projection: contentGroups, akind: term+taxonomy: spacesnode, and a template referenced bycreate.template. - Run
forma config summary --jsonand confirm the resolved config reports the expected entry undercontentGroups. Useconfig inspect --jsononly if the summary is insufficient or authored configuration needs debugging. - Run
forma check --json. - Preview creation with
forma create notes --input ... --preview --json, then create the two approved notes without--preview. - Run
forma list --space notes --json,forma inspect notes/first-note.md --json, andforma view render .forma/views/notes --json. - Run
forma workspace health --jsonbefore links exist and record isolated-page warnings as relationship feedback. - Add links between the notes and rerun
forma workspace health --json. - For the scenario-driven design case, require an accepted first-slice scope and verification path before adding content groups or supporting files.
Expected Results
forma initcreates only.forma.mdand.agents/skills/forma-cli/SKILL.md.- The Agent does not assume
notes,tasks,members, orspaceare built-in domain concepts. - The wrong config reports
config.unknownNodeKind; a warning still counts as detecting the unsupported node, even when the command exits successfully. - The Agent clarifies missing requirements and implements only an approved first slice without asking again about settled choices.
- The Agent maps human domain language to Forma artifacts without presenting
task,member,note, orprojectas built-ins. - The guided content group appears under
contentGroupsinconfig summary. check,create,list,inspect, andview renderpass for the guided content group.- Isolated-page
workspace healthwarnings are treated as relationship feedback, not failed bootstrap. - After adding explicit links,
workspace healthpasses.
Evidence Or Execution Notes
Record the temporary workspace path, commands run, failure messages, verification output, and any docs or skill changes made in response.
2026-06-27 Manual Run
Temporary workspace: /private/tmp/forma-pressure.JO0ol7.
Baseline and pressure observations:
forma init --name "Zero Start Knowledge" --json: passed and wrote only.forma.mdplus.agents/skills/forma-cli/SKILL.md.- Generated
forma-cli-coreguidance told the Agent to loadworkspace.configuration,workspace.spaces,workspace.schemas,workspace.templates, andagents.workspace-bootstrapbefore authoring the first content group.
2026-06-27 Scenario Mapping Run
Temporary workspace: /private/tmp/forma-bootstrap-pressure.9ci4aa.
Scenario observations:
forma init --name "Consulting Workspace" --json: passed and wrote only.forma.mdplus.agents/skills/forma-cli/SKILL.md.- The consulting-practice first slice was modeled as a single
clientsspace withname,summary,status,primaryContact, andtagsfields. - The config used
kind: term,taxonomy: spaces, andcreate.template;forma config inspect --jsonpassed and reportedspaces.clients. forma check --json: passed.forma create clients ... --json: passed for two sample clients.forma list --space clients --json: passed and returned both sample clients.forma inspect clients/acme-clinic.md --json: passed.forma workspace health --jsonreported isolated-page relationship warnings, which are acceptable for this first disconnected slice.- A deliberately wrong config using
kind: space,id: notes, and top-leveltemplatefailedforma check --jsonwithconfig.parseFailedandmissing field template, proving the scenario catches the previous mistaken model. - The guided config using
kind: term,taxonomy: spaces, andcreate.templatepassedconfig inspect --jsonand appeared underspaces.notes. forma check --json: passed.forma create notes ... --json: passed for two notes.forma list --space notes --json: passed and returned both notes.forma inspect notes/first-note.md --json: passed.forma workspace health --jsonbefore links reported isolated-page warnings.- After adding explicit links between the two notes,
forma workspace health --json: passed.
Docs changes made during this run:
docs/agents/forma-cli-core.mdnow points Agents to the embedded docs needed before authoring the first content group.docs/agents/workspace-bootstrap.mdnow includes the step-by-step first content category workflow and isolated-page warning interpretation.docs/workspace/templates.mdnow describes templates ascreate.templateon a configured content group instead of as a built-in space mechanism.
2026-06-27 Generic View Render Run
Temporary workspace: /private/tmp/forma-empty-workspace.SJQISD.
Scenario observations:
forma init --name "Scenario Workspace" --json: passed and wrote only.forma.mdplus.agents/skills/forma-cli/SKILL.md.- Added one guideline, one
notesspace, one note template, one table view, and one sample note using only files included from.forma.md. forma check --json: passed.forma skills list --json: passed and discovered the built-informa-cli-coreskill plus the workspace guideline skill.forma list --space notes --json: passed and returnednotes/first-note.md.forma inspect notes/first-note.md --json: passed and returned the space guideline.forma view render .forma/views/notes --json: passed and returned a table projection for the notes view.forma workspace health --jsonreported isolated-page relationship warnings for the single note. This is acceptable first-slice feedback, not a failed bootstrap.
2026-06-29 No-Example Grant Applications Run
Temporary workspace: /private/tmp/forma-no-example-phase1.JfWlhJ.
Scenario observations:
forma init --name "Grant Applications" --json: passed and wrote only.forma.mdplus.agents/skills/forma-cli/SKILL.md.- The first slice was modeled as a single
applicationsspace withtitle,summary,sponsor,status,dueDate,amountRequested, andtagsfields. - Funder records, investigators, budget documents, and compliance reviews were explicitly deferred as relationships instead of modeled as first-slice spaces.
- The config used
kind: taxonomy,kind: term,taxonomy: spaces, andcreate.template;forma config inspect --jsonpassed and reportedspaces.applications. forma check --json: passed after correct config and sample content.forma create applications ... --json: passed for two sample application records.forma list --space applications --json: passed and returned both records.forma inspect applications/stem-outreach-expansion.md --json: passed and returned the configured metadata.forma workspace health --jsoninitially reported isolated-page warnings.- After adding explicit Markdown links between the two application records,
forma workspace health --json: passed. - A deliberately wrong config using
kind: spaceand top-leveltemplatenow reportsconfig.unknownNodeKindwithstatus: warning. - No example workspace content was loaded or copied.
Context budget evidence:
122 skills/forma-cli/SKILL.md
477 docs/agents/forma-cli-core.md
1027 docs/agents/workspace-bootstrap.md