007
無料Security audit, hardening, threat modeling (STRIDE/PASTA), Red/Blue Team, OWASP checks, code review, incident response, and infrastructure security for any project.
日本語の概要は準備中です。原文の説明を表示しています。
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.
インストールする前に、エージェントに与えられる指示の中身を確認できます。
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.
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
/setupfirst 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.
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:
^[a-z0-9_-]+$agents/ or in hydra.yaml agents listCreate 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.
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:
agents/<FOLDER>/CLAUDE.mdYou are <NAME>. Describe your persona and capabilities here. with the user's description## Filesystem Layout, ## Memory, and all other sections intactAsk the user:
Which Claude model should this agent use?
- Sonnet (Recommended) — fast, capable, cost-effective
- Opus — most capable, slower, higher cost
- 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.
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 accessagents/<FOLDER>/.
If no, skip to Section 4.
If yes:
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 filesWhich should this agent access? Or add a new directory.
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:
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
~/.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
}
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.
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.
Ask the user:
How will you interact with this agent?
- CLI only (default) — use
hydra exec <FOLDER>to chat- Telegram — connect to a Telegram bot for mobile access
If CLI only, skip to Section 5.
If Telegram:
Check hydra.yaml bots: section. If bots exist, present them:
You have these Telegram bots configured:
anton— Antonmerlin— MerlinUse an existing bot, or create a new one?
If user picks an existing bot, get the bot's name for the trigger.
If creating a new bot:
Tell the user:
- Open Telegram and message @BotFather
- Send
/newbotand follow the prompts- Copy the bot token (looks like
123456:ABC-DEF...)- Paste the token here
Ask for the bot's name (used as trigger word)
Choose an env var name (e.g., NEW_BOT_TOKEN) and add to .env:
echo "NEW_BOT_TOKEN=<token>" >> .env
Add bot entry to hydra.yaml bots: section:
bots:
<bot_key>:
name: <BotName>
token: env:NEW_BOT_TOKEN
platform: telegram
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
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:
.env.env:
echo "<VAR_NAME>=<value>" >> .env
agents/<FOLDER>/CLAUDE.md — add a note about available environment variables (without exposing actual values)Run validation:
hydra config validate
If validation fails, read the error carefully and fix the config. Common issues:
bots: sectionIf 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
/exitor Ctrl+C.
Print a summary of everything created:
Agent created successfully!
Setting Value Name <NAME> Folder agents/<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 personahydra.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.mdto further refine the persona- Run
hydra exec <FOLDER>to chat with the agent- Run
/add-agentagain to create another agent
まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
Security audit, hardening, threat modeling (STRIDE/PASTA), Red/Blue Team, OWASP checks, code review, incident response, and infrastructure security for any project.
日本語の概要は準備中です。原文の説明を表示しています。
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
日本語の概要は準備中です。原文の説明を表示しています。
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
日本語の概要は準備中です。原文の説明を表示しています。
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).
日本語の概要は準備中です。原文の説明を表示しています。
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.
日本語の概要は準備中です。原文の説明を表示しています。
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
日本語の概要は準備中です。原文の説明を表示しています。