/create-issue
Create GitHub issue with automated research (--quick for fast mode)
$ npx -y skills add akaszubski/autonomous-dev --agent claude-codeHow it fires
How this command gets triggered: by you, by Claude, or both.
- Fires itselfClaude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/create-issue
Context preview
What this command does when you run it.
Create GitHub issue with automated research (--quick for fast mode)
Command definition
create-issue.mdname: create-issue
description: "Create GitHub issue with automated research (--quick for fast mode)"
argument-hint: "Issue title [--quick] (e.g., 'Add JWT authentication' or 'Add JWT authentication --quick')"
allowed-tools: [Task, Read, Bash, Grep, Glob]
disable-model-invocation: false
user-invocable: true
user_facing: true
Create GitHub Issue with Research Integration
Automate GitHub issue creation with research-backed, well-structured content.
Modes
| Mode | Time | Description | |------|------|-------------| | **Default (thorough)** | 8-12 min | Full analysis, blocking duplicate check | | **--quick** | 30-60 sec | Inline scan + generation, 0 agents, no prompts |
Implementation
**CRITICAL**: Follow these steps in order. Each checkpoint validates before proceeding.
ARGUMENTS: {{ARGUMENTS}}
---
Argument Handling
The `{{ARGUMENTS}}` placeholder is replaced with user input at runtime.
**Parsing strategy**: 1. Scan for flags: `--quick`, `--thorough` (deprecated, now default) 2. Everything remaining after flags = feature request text 3. If no text provided, prompt user for feature description
**Examples**:
- `/create-issue Add JWT authentication` → feature="Add JWT authentication", mode=default
- `/create-issue Add JWT auth --quick` → feature="Add JWT auth", mode=quick
- `/create-issue --quick Fix login bug` → feature="Fix login bug", mode=quick
---
STEP 0: Parse Arguments and Mode
Parse the ARGUMENTS to detect mode flags:
--quick Fast mode (inline scan + generation, 0 agents, no prompts)
--thorough (Deprecated - silently accepted, now default behavior)
**Default mode**: Thorough mode with full analysis, blocking duplicate check, all sections.
Extract the feature request (everything except flags).
**Create command context file immediately, in its OWN separate Bash tool call** (before any agents are spawned and before any `gh issue create` calls):
python3 -c "
import json; from datetime import datetime, timezone
with open('/tmp/autonomous_dev_cmd_context.json', 'w') as f:
json.dump({'command': 'create-issue', 'timestamp': datetime.now(timezone.utc).isoformat()}, f)
"This context file allows the `issue-creator` agent to run `gh issue create` later. It MUST be created here, before STEP 1, because agents spawned in STEP 1-2 may need it. The context file is cleaned up at CHECKPOINT 3 or on early exit.
**Prior-call ordering contract (Issue #1203)**: The PreToolUse hook evaluates each Bash invocation BEFORE it runs. The context-file write above MUST be a STANDALONE Bash tool call. **FORBIDDEN: Do NOT bundle the context write and `gh issue create` into one Bash tool call** — at hook evaluation time the context file would not yet exist on disk and the `gh issue create` call would be blocked. See #1203. The cleanup of the context file MAY ride the same call as the last `gh issue create` only when no further `gh issue create` calls follow in this command run.
---
QUICK MODE FAST PATH (0 agents, 30-60 sec)
**HARD GATE**: If `--quick` flag is set, execute the steps below inline. Do NOT proceed to STEP 1.
**Quick Step 1: Create context file** (already done in STEP 0 above)
**Quick Step 2: Inline duplicate scan**
Run via Bash tool (no agent):
gh issue list --state open --limit 50 --json number,title
Compare issue titles against the feature request by keyword overlap. Store any matches for display after creation (no blocking prompt).
**Quick Step 3: Generate issue body inline**
Generate a markdown body with EXACTLY these 4 sections (no more, no less):
1. **Summary**: 1-2 sentences describing the feature/fix 2. **Implementation Approach**: Brief technical plan 3. **Test Scenarios**: 3-5 test cases (happy path, error cases, edge cases) 4. **Acceptance Criteria**: Checkboxes for verifiable conditions 5. **Plugin Version**: Include the plugin version stamp: `$(python3 -c "import sys,os;next((sys.path.insert(0,p) for p in ('.claude/lib','plugins/autonomous-dev/lib',os.path.expanduser('~/.claude/lib')) if os.path.isdir(p)),None);from version_reader import get_plugin_version;print(get_plugin_version())" 2>/dev/null || echo unknown)`
Capture a collision-safe Unix timestamp (nanoseconds — unique even across concurrent runs):
RUN_TS=$(date +%s%N)
Temp files use the `RUN_TS=$(date +%s%N)` unique suffix for collision-safety across concurrent runs.
Write the body to a temp file (CWE-78 prevention — never inline body as shell argument):
cat > /tmp/create_issue_body_${RUN_TS}.md << 'ISSUE_EOF'
[generated body here]
ISSUE_EOF**Quick Step 4: Create the issue (chained cleanup — #1204)**
The trailing `rm` is chained onto the `gh issue create` call via `;` so the single Bash approval covers the cleanup AND the cleanup runs even on failure paths. The context-file WRITE above (in STEP 0) remains a separate prior call, preserving the #1203 contract.
gh issue create --title "TITLE" --body-file /tmp/create_issue_body_${RUN_TS}.md; rm -f /tmp/autonomous_dev_cmd_context.json /tmp/create_issue_body_${RUN_TS}.md**Quick Step 5: Display result**
Show the created issue URL. If the duplicate scan in Quick Step 2 found matching issues, display them as informational below the URL (no prompt, no blocking). Cleanup already happened as part of Quick Step 4.
**END** — Do not proceed to STEP 1 or any subsequent steps.
---
STEP 1: Research + Async Issue Scan (Parallel)
Launch TWO agents in parallel using the Task tool:
**Agent 1: researcher** (subagent_type="researcher")
- Search codebase for similar patterns
- Research best practices and security considerations
- Identify recommended approaches
**Agent 2: issue-scanner** (subagent_type="Explore", run_in_background=true)
- Quick scan of existing issues for duplicates/related
- Use: `gh issue list --state all --limit 100 --json number,title,body,state`
- Identify semantic similarity to the feature request
- Confidence threshold: >80% for dupli
Read more
name: create-issue description: "Create GitHub issue with automated research (--quick for fast mode)" argument-hint: "Issue title [--quick] (e.g., 'Add JWT authentication' or 'Add JWT authentication --quick')" allowed-tools: [Task, Read, Bash, Grep, Glob] disable-model-invocation: false user-invocable: true user_facing: true
Create GitHub Issue with Research Integration
Automate GitHub issue creation with research-backed, well-structured content.
Modes
| Mode | Time | Description | |------|------|-------------| | **Default (thorough)** | 8-12 min | Full analysis, blocking duplicate check | | **--quick** | 30-60 sec | Inline scan + generation, 0 agents, no prompts |
Implementation
**CRITICAL**: Follow these steps in order. Each checkpoint validates before proceeding.
ARGUMENTS: {{ARGUMENTS}}
---
Argument Handling
The `{{ARGUMENTS}}` placeholder is replaced with user input at runtime.
**Parsing strategy**: 1. Scan for flags: `--quick`, `--thorough` (deprecated, now default) 2. Everything remaining after flags = feature request text 3. If no text provided, prompt user for feature description
**Examples**:
- `/create-issue Add JWT authentication` → feature="Add JWT authentication", mode=default
- `/create-issue Add JWT auth --quick` → feature="Add JWT auth", mode=quick
- `/create-issue --quick Fix login bug` → feature="Fix login bug", mode=quick
---
STEP 0: Parse Arguments and Mode
Parse the ARGUMENTS to detect mode flags:
--quick Fast mode (inline scan + generation, 0 agents, no prompts) --thorough (Deprecated - silently accepted, now default behavior)
**Default mode**: Thorough mode with full analysis, blocking duplicate check, all sections.
Extract the feature request (everything except flags).
**Create command context file immediately, in its OWN separate Bash tool call** (before any agents are spawned and before any `gh issue create` calls):
python3 -c "
import json; from datetime import datetime, timezone
with open('/tmp/autonomous_dev_cmd_context.json', 'w') as f:
json.dump({'command': 'create-issue', 'timestamp': datetime.now(timezone.utc).isoformat()}, f)
"This context file allows the `issue-creator` agent to run `gh issue create` later. It MUST be created here, before STEP 1, because agents spawned in STEP 1-2 may need it. The context file is cleaned up at CHECKPOINT 3 or on early exit.
**Prior-call ordering contract (Issue #1203)**: The PreToolUse hook evaluates each Bash invocation BEFORE it runs. The context-file write above MUST be a STANDALONE Bash tool call. **FORBIDDEN: Do NOT bundle the context write and `gh issue create` into one Bash tool call** — at hook evaluation time the context file would not yet exist on disk and the `gh issue create` call would be blocked. See #1203. The cleanup of the context file MAY ride the same call as the last `gh issue create` only when no further `gh issue create` calls follow in this command run.
---
QUICK MODE FAST PATH (0 agents, 30-60 sec)
**HARD GATE**: If `--quick` flag is set, execute the steps below inline. Do NOT proceed to STEP 1.
**Quick Step 1: Create context file** (already done in STEP 0 above)
**Quick Step 2: Inline duplicate scan**
Run via Bash tool (no agent):
gh issue list --state open --limit 50 --json number,title
Compare issue titles against the feature request by keyword overlap. Store any matches for display after creation (no blocking prompt).
**Quick Step 3: Generate issue body inline**
Generate a markdown body with EXACTLY these 4 sections (no more, no less):
1. **Summary**: 1-2 sentences describing the feature/fix 2. **Implementation Approach**: Brief technical plan 3. **Test Scenarios**: 3-5 test cases (happy path, error cases, edge cases) 4. **Acceptance Criteria**: Checkboxes for verifiable conditions 5. **Plugin Version**: Include the plugin version stamp: `$(python3 -c "import sys,os;next((sys.path.insert(0,p) for p in ('.claude/lib','plugins/autonomous-dev/lib',os.path.expanduser('~/.claude/lib')) if os.path.isdir(p)),None);from version_reader import get_plugin_version;print(get_plugin_version())" 2>/dev/null || echo unknown)`
Capture a collision-safe Unix timestamp (nanoseconds — unique even across concurrent runs):
RUN_TS=$(date +%s%N)
Temp files use the `RUN_TS=$(date +%s%N)` unique suffix for collision-safety across concurrent runs.
Write the body to a temp file (CWE-78 prevention — never inline body as shell argument):
cat > /tmp/create_issue_body_${RUN_TS}.md << 'ISSUE_EOF'
[generated body here]
ISSUE_EOF**Quick Step 4: Create the issue (chained cleanup — #1204)**
The trailing `rm` is chained onto the `gh issue create` call via `;` so the single Bash approval covers the cleanup AND the cleanup runs even on failure paths. The context-file WRITE above (in STEP 0) remains a separate prior call, preserving the #1203 contract.
gh issue create --title "TITLE" --body-file /tmp/create_issue_body_${RUN_TS}.md; rm -f /tmp/autonomous_dev_cmd_context.json /tmp/create_issue_body_${RUN_TS}.md**Quick Step 5: Display result**
Show the created issue URL. If the duplicate scan in Quick Step 2 found matching issues, display them as informational below the URL (no prompt, no blocking). Cleanup already happened as part of Quick Step 4.
**END** — Do not proceed to STEP 1 or any subsequent steps.
---
STEP 1: Research + Async Issue Scan (Parallel)
Launch TWO agents in parallel using the Task tool:
**Agent 1: researcher** (subagent_type="researcher")
- Search codebase for similar patterns
- Research best practices and security considerations
- Identify recommended approaches
**Agent 2: issue-scanner** (subagent_type="Explore", run_in_background=true)
- Quick scan of existing issues for duplicates/related
- Use: `gh issue list --state all --limit 100 --json number,title,body,state`
- Identify semantic similarity to the feature request
- Confidence threshold: >80% for dupli
A harness that wraps Claude Code with enforcement, specialist agents, and alignment gates to deliver consistent, production-grade software engineering outcomes.
Repo: akaszubski/autonomous-dev
Other commands on autonomous-dev.
- /advise
Critical thinking analysis - validates alignment, challenges assumptions, identifies risks
Open command - /align
Unified alignment command (--project, --docs, --retrofit, --content)
Open command - /audit
Comprehensive quality audit - code quality, documentation, coverage, security
Open command - /autoresearch
Autonomous experiment loop — hypothesize, modify, benchmark, commit or revert
Open command - /drain-queue
Autonomous queue drainer — picks the top /triage cluster, applies safety gates, drains via /implement --issues, pushes, deploys.
Open command - /goa
Governance, Observability, Audit — autonomous infra-health observer for autonomous-dev itself. Subcommands: start | stop | status.
Open command

