Create teams, skills, and prompts
Create a team, a skill of your own, or a reusable prompt inside .bowerloom, and put it in place for Claude Code and Codex.
Open beta · 0.7.0-beta.1
Three commands create files inside .bowerloom: team create, skill create, and prompt create. Agents use them most. Each one finds the project, shows a plan, and writes after you approve that exact plan. They write inside .bowerloom only. They start no workers and run nothing. You and your agents own the files they make and can edit them.
Before you start
Install Bowerloom and run bowerloom up --team <name> --goal <goal> once, so the project holds .bowerloom. See Install Bowerloom. Keep the project out of iCloud Drive. A project in a cloud-synced folder refuses with PROJECT_IN_CLOUD_FOLDER.
Every command takes --approve <revision> and --json. Without --approve, a terminal asks before it writes. Without a terminal, or with --json, the command prints the plan and its revision and exits 3. Approvals and exit codes explains the flow.
If you delete a created prompt or team, status and up hold it and name it. Run bowerloom prompt create <id> to restore a registered prompt that was deleted. Restore a deleted team from version control.
Ask your agent
Create a Bowerloom team named research-desk, a skill named house-style, and a prompt named weekly-update in this project. Run each command without --approve first and show me the plan. Wait for my approval of each plan, then run the same command with that revision. Then run bowerloom ls and bowerloom apply, and show me the apply plan. Do not edit AGENTS.md or CLAUDE.md, and do not start workers.
Agent procedure
Create a team
bowerloom team create research-desk --profile research
The team lands in .bowerloom/teams/research-desk. It is built from the project brief, with a lead, a maker, and a reviewer. The name is the team id. Use lower-case words joined by hyphens. first-team is taken by setup, and TEAM_ID_RESERVED refuses it. --profile takes engineer, founder, or research. The default is the profile in the project brief.
Create a skill of your own
bowerloom skill create house-style
The skill lands in .bowerloom/skills/house-style/SKILL.md, and .bowerloom/skills.json lists it as a local skill. The name is the skill id. personal-assistant and any id that starts with prompt- are reserved. --team <team> limits the skill to a team that exists. Pass it once for each team. Without it, every team gets the skill.
Commit this skill with your project. To pin a skill that someone else published, use skills add. See Add third-party skills.
Create a prompt
bowerloom prompt create weekly-update
The prompt lands in .bowerloom/prompts/weekly-update.md. The name is the prompt id, at most 57 characters. --team <team> limits the prompt to a team that exists.
Read the plan
Each create command prints a plan before it writes. This is the plan that bowerloom skill create house-style printed in the test run for this release. It exited 3:
Create skill house-style in .bowerloom/skills/house-style
Teams: every team
Files: 1
skills.json: adds a local entry; a new file
You and your agents own these files and can edit them.
This writes inside .bowerloom only. It starts no workers and runs nothing.
Revision: 453b4d27eca25021d4146bd11a0e0b59677a23f4100d887020854bdabaeb5f51
Approval required. Run the same command again with --approve 453b4d27eca25021d4146bd11a0e0b59677a23f4100d887020854bdabaeb5f51
Your revision will differ from this one. Use the revision that your own plan prints.
Show the plan to the human. After approval, run the same command with the revision:
bowerloom skill create house-style --approve REVISION_FROM_THE_PLAN
Check the result
bowerloom ls
bowerloom ls prompts
ls lists teams, skills, and prompts. It reads only. An empty section shows none yet.
Put the files in place
skills sync or apply copies a created skill for your harnesses. A harness is the agent application that reads the copies, such as Claude Code or Codex. Only apply copies a created prompt:
bowerloom apply
A skill goes to .claude/skills and .agents/skills. A prompt becomes the Claude Code command .claude/commands/weekly-update.md and the Codex skill .agents/skills/prompt-weekly-update. apply never edits AGENTS.md or CLAUDE.md. It prints a line for you to add. See Apply the skills.
If a command refuses
TEAM_EXISTS,SKILL_EXISTS, andPROMPT_EXISTSmean the id is taken. Runbowerloom ls teams,ls skills, orls prompts, and choose another id.TEAM_NAME_INVALID,SKILL_NAME_INVALID, andPROMPT_NAME_INVALIDmean the id is not a plain id. The id becomes a folder or file name.SKILL_NAME_RESERVEDmeans Bowerloom uses that id itself.TEAM_NOT_FOUNDmeans--teamnames a team that does not exist.PROJECT_BRIEF_INVALIDmeans a new team cannot be built from the saved project brief. Runbowerloom status.REVISION_PENDINGmeans a revise is unfinished. Finish it first. See Recover an interrupted revision.AUTHORING_PENDINGmeans an interrupted create left files. Bowerloom finishes a create only when the leftovers match its record exactly. Read.bowerloom/authoring/pending.json, then run the same command without--approveto see how the next plan finishes or clears it.AUTHORING_UNREGISTEREDmeans Bowerloom keeps track only of whatcreatemade.
Errors lists the other project refusals.
Limits in this beta
bowerloom reviserefuses once a project holds content added after setup. The fix comes in a later 0.7 release.- No worker starts. Created teams, skills, and prompts are files.
- Native discovery of the copies by Claude Code and Codex is not observed.