本文へ移動
cccskills
無料GitHub で公開

add-agent

Create a new Hydra agent with full configuration. Use when user wants to add an agent, new agent, create agent, or set up another agent. Walks through persona, mounts, Telegram, model, and secrets.

インストール方法を見る

含まれるファイル(2)

  • SKILL.md8.7 KB
  • source.json689 B

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Add Agent

Interactive wizard for creating a fully configured Hydra agent. Handles persona customization, mount configuration, Telegram integration, model selection, and environment variables.

Run all commands automatically. Only pause when user action is required (choosing options, pasting tokens).

UX Note: Use AskUserQuestion for all choices instead of plain text prompts.


0. Prerequisites

Check that the project is ready for agent creation:

[ -f hydra.yaml ] && echo "Config exists" || echo "NO_CONFIG"

If hydra.yaml does not exist, tell the user:

You need to run /setup first to create the base configuration.

Stop here if no config.

docker images | grep hydra-agent | head -5

If no image found, build it:

./container/build.sh

Read the current state:

cat hydra.yaml

Also check for the mount allowlist:

[ -f ~/.config/hydra/mount-allowlist.json ] && cat ~/.config/hydra/mount-allowlist.json || echo "NO_ALLOWLIST"

Note existing agents, bots, and security config for later steps.


1. Agent Identity

Ask the user:

What should this agent be called?

Name: Display name (e.g., "Merlin", "Dev Helper", "Research Bot") Folder: Short lowercase identifier (e.g., "merlin", "dev", "research")

Suggest folder as name.toLowerCase().replace(/\s+/g, '-').

Validate:

  • Folder must match ^[a-z0-9_-]+$
  • Folder must not already exist in agents/ or in hydra.yaml agents list

Create the agent:

hydra agent create --name "<NAME>" --folder <FOLDER>

This creates agents/<FOLDER>/CLAUDE.md with a template and appends a basic entry to hydra.yaml.


2. Persona & Model

Persona

Ask the user:

How should this agent behave? Describe its role and personality.

Examples:

  • "You are a senior full-stack developer focused on TypeScript and React"
  • "You are a research assistant that summarizes papers and finds citations"
  • "You are a DevOps engineer that helps with infrastructure and deployments"

Or skip to keep the default generic persona.

If the user provides a persona description:

  1. Read agents/<FOLDER>/CLAUDE.md
  2. Replace the line You are <NAME>. Describe your persona and capabilities here. with the user's description
  3. Keep the ## Filesystem Layout, ## Memory, and all other sections intact

Model

Ask the user:

Which Claude model should this agent use?

  1. Sonnet (Recommended) — fast, capable, cost-effective
  2. Opus — most capable, slower, higher cost
  3. Skip — use system default

If a model is selected, read hydra.yaml, find the agent entry just created, and add model: sonnet or model: opus to it. Use the Edit tool to modify hydra.yaml.


3. Mounts

Ask the user:

Does this agent need access to directories outside its own agent folder?

Examples: source code repos (~/src), project folders, documents. Without mounts, the agent can only access agents/<FOLDER>/.

If no, skip to Section 4.

If yes:

Existing Roots

Check what's already configured. Read hydra.yaml security.mounts.allowed_roots and ~/.config/hydra/mount-allowlist.json.

If there are existing allowed roots, present them:

These directories are already allowed for mounting:

  • ~/src (read-write) — Source code repositories
  • ~/projects (read-write) — Project files

Which should this agent access? Or add a new directory.

New Roots

If the user wants a directory not in the allowed roots:

Ask:

What host directory? (e.g., ~/Documents, ~/projects/myapp)

Ask:

Should it be read-write or read-only?

Then update both files:

  1. hydra.yaml — add to security.mounts.allowed_roots if not already present:

    security:
      mounts:
        allowed_roots:
          - path: ~/new-dir
            allow_read_write: true
            description: User-provided description
    
  2. ~/.config/hydra/mount-allowlist.json — add to allowedRoots array (create file if needed):

    {
      "path": "~/new-dir",
      "allowReadWrite": true,
      "description": "User-provided description"
    }
    

    Note: allowlist uses camelCase, hydra.yaml uses snake_case.

    If the file doesn't exist, create it with default blocked patterns:

    {
      "allowedRoots": [...],
      "blockedPatterns": [
        ".ssh", ".gnupg", ".aws", "credentials", ".env",
        ".netrc", ".npmrc", "id_rsa", "id_ed25519", "private_key", ".secret"
      ],
      "nonMainReadOnly": true
    }
    

Add Mounts to Agent

For each directory the user selected, add a container.mounts entry to the agent in hydra.yaml:

    container:
      mounts:
        - host_path: ~/src
          container_path: src
          readonly: false

The container_path should be a short name derived from the last segment of the host path.

Update Agent's CLAUDE.md

Read agents/<FOLDER>/CLAUDE.md and update the Filesystem Layout table to include the actual mount paths:

| `/workspace/extra/<container_path>/` | Mounted from `<host_path>` on the host — <description>. |

Add a row for each mount, keeping the existing rows intact.


4. Integration

Ask the user:

How will you interact with this agent?

  1. CLI only (default) — use hydra exec <FOLDER> to chat
  2. Telegram — connect to a Telegram bot for mobile access

If CLI only, skip to Section 5.

If Telegram:

Existing Bots

Check hydra.yaml bots: section. If bots exist, present them:

You have these Telegram bots configured:

  • anton — Anton
  • merlin — Merlin

Use an existing bot, or create a new one?

Existing Bot

If user picks an existing bot, get the bot's name for the trigger.

New Bot

If creating a new bot:

  1. Tell the user:

    1. Open Telegram and message @BotFather
    2. Send /newbot and follow the prompts
    3. Copy the bot token (looks like 123456:ABC-DEF...)
    4. Paste the token here
  2. Ask for the bot's name (used as trigger word)

  3. Choose an env var name (e.g., NEW_BOT_TOKEN) and add to .env:

    echo "NEW_BOT_TOKEN=<token>" >> .env
    
  4. Add bot entry to hydra.yaml bots: section:

    bots:
      <bot_key>:
        name: <BotName>
        token: env:NEW_BOT_TOKEN
        platform: telegram
    

Update Agent Entry

Add trigger, bot, and chat_id to the agent entry in hydra.yaml:

    trigger: "@<BotName>"
    bot: <bot_key>
    chat_id: ""        # Auto-populated when user first messages the bot

5. Environment Variables / Secrets

Ask the user:

Does this agent need any additional environment variables?

Examples: GITHUB_TOKEN, OPENAI_API_KEY, custom API keys.

Default variables (ANTHROPIC_API_KEY, memory keys) are automatically available. Choose skip if no additional variables are needed.

If the user provides variables:

For each variable:

  1. Ask for the variable name and value
  2. Check if it already exists in .env
  3. If not, append to .env:
    echo "<VAR_NAME>=<value>" >> .env
    
  4. Document in agents/<FOLDER>/CLAUDE.md — add a note about available environment variables (without exposing actual values)

6. Validate & Test

Run validation:

hydra config validate

If validation fails, read the error carefully and fix the config. Common issues:

  • Bot referenced in agent doesn't exist in bots: section
  • Duplicate agent folders
  • Invalid folder names
  • Missing required fields

If validation passes, ask the user:

Want to test the agent interactively?

If yes:

hydra exec <FOLDER>

Tell the user:

This drops you into a live Claude Code session inside the agent's container. Type a message to test. Exit with /exit or Ctrl+C.


7. Summary

Print a summary of everything created:

Agent created successfully!

SettingValue
Name<NAME>
Folderagents/<FOLDER>/
Persona<custom/default>
Model<sonnet/opus/default>
Mounts<list or "none">
Integration<CLI only / Telegram via @BotName>
Extra env vars<list or "none">

Files modified:

  • agents/<FOLDER>/CLAUDE.md — agent persona
  • hydra.yaml — agent entry added
  • .env — (if new tokens/keys added)
  • ~/.config/hydra/mount-allowlist.json — (if new roots added)

Next steps:

  • Edit agents/<FOLDER>/CLAUDE.md to further refine the persona
  • Run hydra exec <FOLDER> to chat with the agent
  • Run /add-agent again to create another agent

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

007

無料

Security audit, hardening, threat modeling (STRIDE/PASTA), Red/Blue Team, OWASP checks, code review, incident response, and infrastructure security for any project.

日本語の概要は準備中です。原文の説明を表示しています。

aibot88/sec_skill_store42026年5月27日 更新

Guides the creation of agile user stories and Gherkin feature files. Use when the user wants to create a user story, write acceptance criteria, define Gherkin scenarios, or author BDD feature files. This should trigger for requests such as Create a user story; Write a user story; I need to write a user story. Part of cursor-rules-java project

日本語の概要は準備中です。原文の説明を表示しています。

aibot88/sec_skill_store42026年5月27日 更新

Facilitates conversational discovery to create Architectural Decision Records (ADRs) for non-functional requirements using the ISO/IEC 25010:2023 quality model. Use when the user wants to document quality attributes, NFR decisions, security/performance/scalability architecture, or design systems with measurable quality criteria. This should trigger for requests such as Create ADR for Non-functional requirements; Document Non-functional requirements; Capture Non-functional requirements; Generate Non-functional requirements in an ADR. Part of cursor-rules-java project

日本語の概要は準備中です。原文の説明を表示しています。

aibot88/sec_skill_store42026年5月27日 更新

Run a health check on an existing project: dependency audit, security scan, test runner detection, CI/CD evaluation, and missing configuration analysis. Maps the three execution gates (pre/in/post) from /10x-bootstrapper to an assessment framework for existing codebases. Reads optional context/foundation/stack-assessment.md from /10x-stack-assess to focus checks on identified gaps. Writes context/foundation/health-check.md with findings, prioritized fixes, and an agent-readiness verdict. Use when the user has an existing project and wants to verify its health before working with an agent. Trigger phrases: "health check", "check my project", "audit my project", "is my project healthy", "sprawdź projekt", "audyt projektu", "health-check", "project health". Use AFTER /10x-stack-assess (brownfield chain), BEFORE agent onboarding (m1-l4).

日本語の概要は準備中です。原文の説明を表示しています。

aibot88/sec_skill_store42026年5月27日 更新

10x-team

無料

You MUST use this when building projects end-to-end. Orchestrates all 12 team roles — automatically switches between CTO, architect, PM, engineers, SRE, security, DBA, QA, and EM based on the current phase of work. Starts with brainstorming before any implementation.

日本語の概要は準備中です。原文の説明を表示しています。

aibot88/sec_skill_store42026年5月27日 更新

Use when you need to add or configure Maven plugins in your pom.xml — including quality tools (enforcer, surefire, failsafe, jacoco, pitest, spotbugs, pmd), security scanning (OWASP), code formatting (Spotless), version management, container image build (Jib), build information tracking, and benchmarking (JMH) — through a consultative, modular step-by-step approach that only adds what you actually need. This should trigger for requests such as Add Maven plugins in pom.xml; Improve Maven plugins in pom.xml. Part of cursor-rules-java project

日本語の概要は準備中です。原文の説明を表示しています。

aibot88/sec_skill_store42026年5月27日 更新

aibot88 のスキルをすべて見る

このスキルの問題を報告する