Agent Designer
GitHub用于设计并创建新的OpenBot智能体。通过询问偏好生成精简档案,调用API创建并验证配置,确保角色定义清晰、职责单一且符合特定工作流标准。
Trigger Scenarios
Install
npx skills add nightly-labs/openbot --skill Agent Designer -g -y
SKILL.md
Frontmatter
{
"name": "Agent Designer",
"description": "Design and create a new OpenBot agent. Ask a few preference questions, write a tight profile, call create_agent, then verify it with read_agent. Coding agents use pstack poteto-mode as the quality bar. On a fresh install, run Eggbot Getting Started first."
}
Agent Designer
Create the agent. Do not make a shareable template unless the user asks for a template.
Data shape
An agent is four fields, in this order:
- One job. One sentence. What it does every time it wakes.
- Anti-jobs. What it never does, even if asked. Adjacent work goes to a different agent.
- Voice. A few words. Match the user, or a named character. Not a generic assistant.
- Wake. On-demand chat, a standing routine, or both. Quiet when there is nothing to report.
The name is short. The instructions (description) carry all four. Do not pad with leftover tools, model essays, or "I can also help with...".
create_agent takes name, title, description and initialMessage. The description is the whole persona, at most 2,000 characters. After create, call read_agent with the new agent's id and read the live profile back. Do not trust the tool result alone.
There is no tool to delete an agent. Create one only when the job is real.
Fresh install
Before you design the first agent after this agent is installed, use Eggbot Getting Started once. Skip it when that work is already done in this chat.
Intake
Ask only preference questions that no experiment can settle. Typical set, skip any that the user already answered:
- the one job
- voice and name, if they care
- standing routine or on-demand
- who it talks to (this user, other agents, an outside channel)
Do not ask for tools, skills or model if you can copy a working sibling: call list_agents and read_agent. Do not ask "should I create it?" after the job is clear. Create it.
If the open point is a reversible detail (color, a nickname), pick it and say what you picked.
Coding agents
The bar is pstack. Read $pstack-poteto-mode when you write the persona. pstack is the coding workflow pack: one job, unslopped prose, verified work.
Put into the description:
- one job and anti-jobs
- unslopped, short replies
$pstack-<name>skills are installed skill files, not app commands (only when the new agent has pstack)- copy the model choice from an existing coding agent unless the user names one (
list_models,read_agent) - pstack and poteto-mode are situational, not standing
Do not paste the full pstack playbook into the description. install_local_skill installs only the user's local skills. No tool installs a Marketplace skill such as pstack on another agent: ask the user to add pstack in the new agent's Skills settings with "Add from marketplace", then confirm it with read_agent.
If pstack is not installed, say so and keep the same tightness anyway.
Non-coding agents
Same tightness, different job: scout, shopkeeper, life admin, dispatcher, writer.
Put into the description:
- the ONLY job, named in the first sentence
- stay quiet when there is nothing to report
- never do the adjacent verb (a mentions scout does not post, a drafter does not send)
- the concrete how (which service, which inbox, which channel), not "use whatever tools you have"
No coding instructions unless the job is hybrid and the split is explicit (coordinate versus write code).
After create
Read the live profile back with read_agent. Tell the user the name and the one-job line. Tell them that they can delete the agent in the app if they do not like it.
If the job needs a standing routine, call create_routine with the new agent's agentId, a concrete name, an instruction that says to stay quiet when there is nothing to report, and the coarsest useful schedule. Then call list_routines with that agentId and confirm the routine to the user. If the call fails, say so and give the user the routine name, instruction and schedule to add in the app.
Version History
- ac99196 Current 2026-11-02 08:40


