Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/opensquad-ai/opensquad/create_agentnpx skills add opensquad-ai/opensquad --skill create_agentgit clone --depth 1 https://github.com/opensquad-ai/opensquadWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00062 | $0.00825 |
| Opus 5 | $0.00031 | $0.00413 |
| Sonnet 5 | $0.00012 | $0.00165 |
| Haiku 4.5 | $0.00006 | $0.00082 |
Grade A, and why
create_agent scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 78 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Purpose
Create an Agent that can send/receive messages and hold normal conversations in a specified group.
Prerequisites
- Know the target group's
group_id(e.g.gjxwzp) - Pick a model card (e.g.
deepseek-flash) - Launcher is running and the
agent_factoryandchat_accounttools are available
Steps
Step 1: Register an IM account
chat_account.register_account(email="agentXXX@ai", password="...", name="AgentXXX")
- Recommended email format:
agentXXX@ai; keep the password simple and consistent.
Step 2: Create the Agent directory
agent_factory.create_agent(dir_name="agentXXX", agent_name="AgentXXX")
dir_nameuses lowercase letters, digits, and underscores.- This generates a default
config.json,role.md, andmcp_config.json.
Step 3: Assign a model card
agent_factory.assign_model_card(dir_name="agentXXX", card_name="deepseek-flash")
- First, call
agent_factory.list_model_cards()to see which model cards are available.
Step 4: Write the role definition (role.md)
agent_factory.set_agent_role(dir_name="agentXXX", role_content="...")
- Use Markdown; describe the core responsibilities and behavioral rules.
- For a group chat assistant, recommended rules include: be concise and direct, reply only when @-mentioned, stay polite.
Step 5: Configure config.json (bind the account and group)
agent_factory.configure_agent(dir_name="agentXXX", config={...})
Key fields:
group_chat.enabled: truegroup_chat.email: "agentXXX@ai"(the email registered in Step 1)group_chat.password: "..."(the password set in Step 1)group_chat.groups: ["target-group-id"]tools: ["system","filesystem","websearch","vision","reminder","im"](these basic tools at minimum;"im"is required, otherwise the Agent cannot connect to the IM channel to send/receive group messages)ui.auto_start_on_boot: true(start automatically on boot)
Keep other fields at their defaults; in particular, preserve the original model and gateway configuration.
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago First seen · 78 lines · 0 tokens per session scan A 7a65b1e3b4b3
create_agent is a skill published in the GitHub repository opensquad-ai/opensquad (5 stars, last pushed 19d ago), licensed MIT. It adds 62 tokens to every session and 825 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
typescript-expert
TypeScript and JavaScript expert with deep knowledge of type-level programming, performance optimization, monorepo management, migration strategies, and modern tooling.
skill-creator
Create or improve Zhin Agent skills (SKILL.md). Use when asked to add a skill, write SKILL.md, document a repeatable agent workflow, or refine skill frontmatter/keywords. Triggers: 创建技能, 写 SKILL, skill-creator, 加 skill.
zhin-plugin-standard-development
Implement Zhin.js plugins with Plugin Runtime. Use when asked to create a plugin, add commands, middleware, components, cron, AI tools/skills/agents, config, database, router, or console pages. 适用于 definePlugin / 约定目录能力落地。.
skill_creator
Dynamically create new skills when no existing skill can handle the request. Use when: you need a capability that doesn't exist yet — write the code, bundle it as a skill, install dependencies, and make it available. NOT for: one-off tasks existing tools handle, or skills too specific to reuse.
change_setting
Modify pythonclaw.json configuration at runtime. Use when: user wants to set API keys, tokens, change LLM provider, adjust web port, or update any config value. NOT for: editing code, changing soul/persona files, or modifying skill files.
change_persona
Modify the agent's personality and role (persona.md). Use when: user wants to change agent personality, communication style, focus area, or specialization. NOT for: changing user name or core identity (use changesoul), or first-time setup (use onboarding).