Skip to content

Commit 28b92ce

Browse files
author
bgagent
committed
refactor: moved plugin to docs dir
1 parent 3a56f80 commit 28b92ce

13 files changed

Lines changed: 16 additions & 29 deletions

File tree

README.md

Lines changed: 6 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -78,12 +78,12 @@ This repository ships a [Claude Code plugin](https://docs.anthropic.com/en/docs/
7878
```bash
7979
git clone https://github.com/aws-samples/sample-autonomous-cloud-coding-agents.git
8080
cd sample-autonomous-cloud-coding-agents
81-
claude --plugin-dir abca-plugin
81+
claude --plugin-dir docs/abca-plugin
8282
```
8383

84-
The `--plugin-dir` flag tells Claude Code to load the local plugin from the `abca-plugin/` directory. The plugin's skills, commands, agents, and hooks will be available immediately.
84+
The `--plugin-dir` flag tells Claude Code to load the local plugin from the `docs/abca-plugin/` directory. The plugin's skills, commands, agents, and hooks will be available immediately.
8585

86-
> **Tip:** If you use Claude Code via VS Code or JetBrains, you can add `--plugin-dir abca-plugin` to the extension's CLI arguments setting.
86+
> **Tip:** If you use Claude Code via VS Code or JetBrains, you can add `--plugin-dir docs/abca-plugin` to the extension's CLI arguments setting.
8787
8888
#### What the plugin provides
8989

@@ -106,16 +106,12 @@ The `--plugin-dir` flag tells Claude Code to load the local plugin from the `abc
106106
| `cdk-expert` | CDK architecture, construct design, handler implementation, stack modifications |
107107
| `agent-debugger` | Task failure investigation, CloudWatch log analysis, agent runtime debugging |
108108

109-
**Hook** (runs automatically):
110-
111-
A `SessionStart` hook injects ABCA project context (key directories, commands, conventions) into every Claude Code session.
112-
113109
#### Local plugin development
114110

115111
If you're modifying the plugin itself, here's the file layout:
116112

117113
```
118-
abca-plugin/
114+
docs/abca-plugin/
119115
plugin.json # Plugin manifest (name, version, description)
120116
skills/
121117
setup/SKILL.md # First-time setup workflow
@@ -128,17 +124,14 @@ abca-plugin/
128124
agents/
129125
cdk-expert.md # CDK infrastructure specialist
130126
agent-debugger.md # Task failure debugger
131-
hooks/
132-
hooks.json # SessionStart hook configuration
133127
```
134128

135129
**Key conventions:**
136-
- All plugin components live inside `abca-plugin/` alongside the manifest
130+
- The plugin lives under `docs/` to keep documentation and plugin content colocated
137131
- Skills live in subdirectories with a `SKILL.md` file (not flat `.md` files)
138132
- Agents are flat `.md` files with YAML frontmatter
139-
- Hooks use JSON configuration in `hooks/hooks.json`
140133

141-
**After editing plugin files**, restart Claude Code with `claude --plugin-dir abca-plugin` to pick up changes.
134+
**After editing plugin files**, restart Claude Code with `claude --plugin-dir docs/abca-plugin` to pick up changes.
142135

143136
### Manual installation and deployment
144137

Lines changed: 7 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,14 @@ A Claude Code plugin that provides guided workflows for setting up, deploying, o
55
## Installation
66

77
```bash
8-
claude --plugin-dir abca-plugin
8+
claude --plugin-dir docs/abca-plugin
99
```
1010

1111
Or add to your project's `.claude/settings.json`:
1212

1313
```json
1414
{
15-
"plugins": ["./abca-plugin"]
15+
"plugins": ["./docs/abca-plugin"]
1616
}
1717
```
1818

@@ -37,20 +37,14 @@ Or add to your project's `.claude/settings.json`:
3737
| `cdk-expert` | Sonnet | AWS CDK infrastructure expert for construct design, handler implementation, and stack modifications |
3838
| `agent-debugger` | Sonnet | Read-only debugging specialist for task failures, preflight errors, and CloudWatch log analysis |
3939

40-
### Hooks
41-
42-
- **SessionStart** — Injects ABCA project context (directory structure, key commands, task types, available skills/agents) into every Claude Code session.
43-
4440
## Plugin Structure
4541

4642
```
47-
abca-plugin/
43+
docs/abca-plugin/
4844
plugin.json # Plugin manifest
4945
agents/
5046
cdk-expert.md # CDK infrastructure agent
5147
agent-debugger.md # Runtime debugging agent
52-
hooks/
53-
hooks.json # SessionStart context injection
5448
skills/
5549
setup/SKILL.md # First-time setup workflow
5650
deploy/SKILL.md # CDK deployment management
@@ -63,21 +57,20 @@ abca-plugin/
6357

6458
## Testing
6559

66-
This plugin is markdown and configuration only (no executable code), so traditional unit tests don't apply. Instead, a **4-layer validation strategy** verifies correctness:
60+
This plugin is markdown and configuration only (no executable code), so traditional unit tests don't apply. Instead, a **3-layer validation strategy** verifies correctness:
6761

6862
| Layer | What it checks |
6963
|-------|---------------|
7064
| **1. Structural** | `plugin.json` fields, file discovery, JSON/YAML validity, no orphaned files |
7165
| **2. Agent Config** | Frontmatter fields (`model`, `tools`, `description`), valid tool names, file path accuracy, capability alignment with examples |
7266
| **3. Content Integrity** | All repo paths exist, all `mise run` commands are valid tasks, all `bgagent` CLI flags match actual help output, skill cross-references resolve, AWS CLI syntax is correct |
73-
| **4. Hooks** | `hooks.json` structure, supported event names, skills/agents listed in hook content all exist, no sensitive data |
7467

7568
### Running the tests
7669

7770
From the repo root with Claude Code:
7871

7972
```
80-
claude --plugin-dir abca-plugin
73+
claude --plugin-dir docs/abca-plugin
8174
```
8275

8376
Then ask Claude to validate the plugin:
@@ -91,8 +84,7 @@ Or run the checks manually:
9184

9285
```bash
9386
# Layer 1: Structural — valid JSON
94-
python3 -c "import json; json.load(open('abca-plugin/plugin.json')); print('plugin.json OK')"
95-
python3 -c "import json; json.load(open('abca-plugin/hooks/hooks.json')); print('hooks.json OK')"
87+
python3 -c "import json; json.load(open('docs/abca-plugin/plugin.json')); print('plugin.json OK')"
9688

9789
# Layer 3: Content — mise tasks exist
9890
MISE_EXPERIMENTAL=1 mise tasks --all 2>/dev/null | grep -E '(build|install|compile|test|deploy|destroy|diff|synth|bootstrap)'
@@ -105,7 +97,6 @@ node cli/lib/bin/bgagent.js submit --help && node cli/lib/bin/bgagent.js list --
10597

10698
To modify the plugin:
10799

108-
1. Edit the relevant `.md` file under `skills/`, `agents/`, or `hooks/`
100+
1. Edit the relevant `.md` file under `skills/` or `agents/`
109101
2. Re-validate using the testing strategy above
110102
3. Ensure any new file paths or commands you reference actually exist in the repo
111-
4. Keep the `SessionStart` hook prompt in sync if you add/remove/rename skills or agents
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.

0 commit comments

Comments
 (0)