Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions .claude/rules/devops-calms.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,10 +27,11 @@ Track these DORA-inspired metrics:
| Validation Pass Rate | >95% | CI green on first push |
| Lead Time | <1 hour | Commit to merge time |
| Change Failure Rate | <15% | PRs requiring fixes |
| Recovery Time | <30 min | Time to fix broken build |
| MTTR | <30 min | Time to fix broken build |

## Sharing

- **Document decisions:** ADRs for architecture, specs for features
- **Cross-agent communication:** AGENTS.md, CLAUDE.md, copilot-instructions.md
- **Claude coordination:** `CLAUDE.md`, `.claude/rules/`, `SKILL.md` frontmatter, `SessionStart` hooks
- **External-AI coordination:** `AGENTS.md`, `.github/copilot-instructions.md` (Copilot, CodeRabbit, humans)
- **Knowledge transfer:** Skills encode reusable workflows
57 changes: 0 additions & 57 deletions .claude/rules/engineering-philosophy.md

This file was deleted.

2 changes: 1 addition & 1 deletion .claude/rules/engineering-principles.md
Original file line number Diff line number Diff line change
Expand Up @@ -143,7 +143,7 @@
- Make invalid states unrepresentable
- Good defaults + clear errors

**IF choosing patterns** → Favor composition over inheritance (#25)
**IF choosing patterns** → Favor composition over inheritance (#25b)
- More flexible, less coupling
- Each module = clear, focused purpose
- Maximize cohesion, minimize coupling
Expand Down
2 changes: 1 addition & 1 deletion .claude/rules/error-handling.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ When reporting errors, use this format:
1. Parse error output completely
2. Identify root cause (not just symptoms)
3. Attempt automatic fix if deterministic
4. Retry with backoff if transient
4. Re-run after fixing the identified issue; escalate if same error recurs on unchanged input
5. Escalate with full context if persistent

## Never Hide Failures
Expand Down
43 changes: 15 additions & 28 deletions .claude/rules/solid-principles.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,45 +4,32 @@ Apply these principles when designing or modifying plugins:

## Single Responsibility

Each plugin should do ONE thing well:
Each plugin does ONE thing well:

- `metacognitive-guard` -> Cognitive amplification + commit integrity + CI verification
- `otelwiki` -> OpenTelemetry documentation only
- `dotnet-architecture-lint` -> .NET build patterns only
- `hookify` -> User-configurable hooks
- `feature-dev` -> Guided feature development + code review
- `exodia` -> Multi-agent workflow orchestration
- `ancplua-project-routing` -> Auto-routes to specialist agents
| Plugin | Responsibility |
|--------|----------------|
| `exodia` | Multi-agent orchestration |
| `metacognitive-guard` | Cognitive safety (amplification, integrity, CI — one domain) |
| `otelwiki` | OpenTelemetry documentation |
| `hookify` | User-configurable behavior hooks |
| `feature-dev` | Guided feature development + code review |
| `dotnet-architecture-lint` | .NET build pattern enforcement |
| `ancplua-project-routing` | Cross-repo specialist agent routing |

**Anti-pattern:** A plugin that handles CI, commits, AND reviews.
**Anti-pattern:** A plugin that handles CI, commits, AND reviews simultaneously with no cohesion.

## Open/Closed

Plugins should be extensible without modification:

- Add new skills to extend behavior
- Use hooks for customization points
- Don't modify core plugin logic for edge cases
Extend via new skills/commands. Don't modify core plugin logic for edge cases.

## Liskov Substitution

Skills must be interchangeable within their category:

- Any code-review skill should accept the same inputs
- Any commit skill should produce compatible outputs
Skills must be interchangeable within their category: any code-review skill accepts the same inputs.

## Interface Segregation

Don't force plugins to implement unused features:

- `hooks/` directory is optional
- `commands/` directory is optional
- Only require what's actually used
Only `plugin.json` + `README.md` are required. All other directories (`skills/`, `commands/`, `hooks/`, `agents/`) are optional.

## Dependency Inversion

Plugins depend on abstractions (Skills), not concrete implementations:

- Skills define the contract
- MCP servers provide the implementation
- Plugins orchestrate, never implement low-level operations
Plugins orchestrate via Skills. Skills define the contract. MCP servers implement. Plugins never implement low-level operations.
14 changes: 0 additions & 14 deletions .claude/rules/thought-transparency.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,24 +18,10 @@ When executing complex tasks, maintain visibility:
- [ ] Step 4: Validation
```

## Granular Task Decomposition

Break work into atomic units:

- Each step should be independently verifiable
- Steps execute sequentially, not in parallel batches
- Complete one phase before starting the next

## Mental State Bookkeeping

Track internal state explicitly:

- Use `TodoWrite` for task tracking
- Mark completed items immediately
- Never claim completion without evidence

## Silent Processing with Tracked Updates

- Work silently on implementation
- Update progress via `TodoWrite`
- Report results only when complete or blocked
17 changes: 17 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,23 @@ and the project follows [Semantic Versioning](https://semver.org/spec/v2.0.0.htm

## [Unreleased]

### Removed

- **`engineering-philosophy.md`**: Deleted — complete duplicate of `engineering-principles.md` (~900 tokens wasted per session; both auto-loaded)

### Changed

- **`thought-transparency.md`**: Removed "Granular Task Decomposition" section (contradicted LAW 3 parallel execution) and duplicate "Silent Processing" section
- **`devops-calms.md`**: Fixed AGENTS.md incorrectly listed as Claude coordination channel; separated Claude channels (`CLAUDE.md`, `.claude/rules/`, `SKILL.md`, SessionStart hooks) from external-AI channels (`AGENTS.md`, `copilot-instructions.md`); standardized "Recovery Time" → "MTTR"
- **`solid-principles.md`**: Compressed from 49 to ~25 lines; replaced bullet list with responsibility table; fixed metacognitive-guard SRP description
Comment on lines +13 to +17
Copy link

Copilot AI Feb 20, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CHANGELOG.md now has two ### Changed sections under [Unreleased] (one newly added here and an existing one later). Consider merging into the existing headings to keep a single set of sections per Keep-a-Changelog style, and reconcile the new removal note with the older [Unreleased] entry that says engineering-philosophy.md was added.

Copilot uses AI. Check for mistakes.
- **`engineering-principles.md`**: Fixed duplicate `#25` tag (second instance is now `#25b`)
- **`error-handling.md`**: Fixed "Retry with backoff if transient" — inapplicable to local tool failures
- **`ARCHITECTURE.md`**: Fixed directory tree (dependabot.yml moved to correct location, added trigger-docs.yml, CODEOWNERS, designs/, ENGINEERING-PRINCIPLES.md); replaced Section 5 SOLID with pointer to rules file; fixed AGENTS.md coordination statement; replaced DORA table with pointer; added SessionStart hooks passive context layer documentation; updated Last Verified date
- **`WORKFLOWS.md`**: Added trigger-docs.yml cross-repo workflow documentation; added commit-integrity-hook note to pre-commit checklist
- **`QUICK-REFERENCE.md`**: Added `/hookify:help` command; clarified eight-gates/hades are skills not slash commands; fixed hades agent count to "12 (base) or 15 (--goggles)"
- **`PLUGINS.md`**: Removed fake required fields (`repository`, `license`); added capability declaration fields example
- **`CLAUDE.md`**: Replaced Section 3 directory tree with pointer to ARCHITECTURE.md; added turbo-fix and fix-pipeline to Section 4 routing tree; removed plugin structure tree from Section 6; reduced Section 8 CI details to pointer; added all doc paths to Section 12; updated Section 15 rules list

### Changed

- **hookify: extract shared hook_runner.py**: 4 near-identical handlers (pretooluse/posttooluse/stop/userpromptsubmit) reduced from 60-78 lines each to 18-line thin wrappers. Shared logic in `hookify/core/hook_runner.py` (~197 lines eliminated)
Expand Down
96 changes: 26 additions & 70 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -101,53 +101,13 @@ but NOT conversation history. All context must be in the spawn prompt.

## 3. Target Architecture (North Star)

```text
ancplua-claude-plugins/
├── CLAUDE.md # This file — operational brain
├── AGENTS.md # Agent catalog for other AIs
├── README.md
├── CHANGELOG.md
├── LICENSE
├── .gitignore
├── .coderabbit.yaml # CodeRabbit config
├── .markdownlint.json # Lint rules
├── .claude/
│ └── rules/ # Auto-loaded rules (SOLID, errors, etc.)
├── .claude-plugin/
│ └── marketplace.json # Plugin registry (source of truth)
├── .github/
│ ├── copilot-instructions.md
│ └── workflows/ # CI, review, auto-merge
├── plugins/ # 7 plugins (22 commands, 5 skills, 9 agents)
│ ├── exodia/ # Multi-agent orchestration — 9 commands + 2 skills (eight-gates, hades)
│ ├── metacognitive-guard/ # Cognitive amplification + commit integrity + CI
│ ├── otelwiki/ # OpenTelemetry docs + sync
│ ├── hookify/ # User-configurable hooks
│ ├── feature-dev/ # Guided feature development + code review
│ ├── dotnet-architecture-lint/# .NET build pattern enforcement
│ └── ancplua-project-routing/ # Cross-repo specialist agent routing
├── docs/
│ ├── ARCHITECTURE.md
│ ├── PLUGINS.md
│ ├── WORKFLOWS.md
│ ├── QUICK-REFERENCE.md
│ ├── ENGINEERING-PRINCIPLES.md
│ ├── specs/ # Feature specs (spec-XXXX-*.md)
│ ├── decisions/ # ADRs (ADR-XXXX-*.md)
│ └── designs/ # Design docs
└── tooling/
├── scripts/
│ ├── weave-validate.sh # Single validation entrypoint
│ └── sync-marketplace.sh
└── templates/
└── plugin-template/
```
See `docs/ARCHITECTURE.md` for the complete repository layout, plugin structure, and ecosystem diagram.

Key paths:
- Plugins: `plugins/<name>/` — 7 plugins (22 commands, 5 skills, 9 agents)
- Rules (auto-loaded): `.claude/rules/`
- Plugin registry: `.claude-plugin/marketplace.json`
- Docs: `docs/` (ARCHITECTURE.md, QUICK-REFERENCE.md, WORKFLOWS.md, PLUGINS.md, ENGINEERING-PRINCIPLES.md)

---

Expand All @@ -162,6 +122,12 @@ These decision trees are ALWAYS loaded and guide your task selection.
Use this decision tree to route tasks to the correct skill or agent:

```text
IF P0 critical bug
→ /exodia:turbo-fix (13 agents, maximum parallelism)

IF fixing audit findings
→ /exodia:fix-pipeline (7 agents)

IF struggling > 2 min
→ read metacognitive-guard skill, escalate to deep-think-partner agent

Expand Down Expand Up @@ -213,7 +179,9 @@ IF multi-agent orchestration needed
/exodia:eight-gates - maximum discipline (8 progressive gates, composes all others)
/exodia:hades - audited cleanup (3 phases x 4+3 teammates with goggles)
→ exodia commands:
/exodia:turbo-fix - P0 critical bugs (13 agents, maximum parallelism)
/exodia:fix - P1/P2/P3 bugs (8 std, 16 max agents)
/exodia:fix-pipeline - fixing findings from an audit (7 agents)
/exodia:mega-swarm - codebase audit (6/8/12 agents by mode)
/exodia:deep-think - multi-perspective analysis (5 agents)
/exodia:tournament - competitive solutions (N+2 agents)
Expand Down Expand Up @@ -549,21 +517,11 @@ When you add/rename/remove a plugin:

### Plugin Structure

Each plugin in `plugins/<name>/` (per [official docs](https://code.claude.com/docs/en/plugins)):
Each plugin in `plugins/<name>/` (per [official docs](https://code.claude.com/docs/en/plugins)).

```text
plugins/<name>/
├── .claude-plugin/
│ └── plugin.json # REQUIRED: name, version, description, author
├── README.md # REQUIRED: User-facing docs
├── skills/
│ └── <skill>/
│ └── SKILL.md # YAML frontmatter required
├── commands/ # Slash commands (.md)
├── agents/ # Custom agents
├── hooks/ # Event hooks (hooks.json)
└── scripts/ # Shell helpers (.sh)
```
See `docs/ARCHITECTURE.md` Section 3 for the full plugin structure and passive context layer documentation.

**Required:** `.claude-plugin/plugin.json` (fields: `name`, `version`, `description`, `author`) + `README.md`
Copy link

Copilot AI Feb 20, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This claims .claude-plugin/plugin.json only requires name, version, description, author, but the repo’s plugin template and all current plugins also include repository and license. For consistency, either include those in the required (repo-convention) field list or clarify that they’re optional per upstream but required by this repo’s template/marketplace expectations.

Suggested change
**Required:** `.claude-plugin/plugin.json` (fields: `name`, `version`, `description`, `author`) + `README.md`
**Required:** `.claude-plugin/plugin.json` + `README.md`. Upstream Claude Code requires at minimum `name`, `version`, `description`, and `author`; this repo’s plugin template and marketplace additionally require `license` and `repository`.

Copilot uses AI. Check for mistakes.

### SKILL.md Format

Expand Down Expand Up @@ -627,17 +585,10 @@ You MUST NOT:

## 8. CI & Validation

### CI Jobs (`.github/workflows/ci.yml`)

- `plugin-validation`: `claude plugin validate .` + per-plugin
- `shell-scripts`: `shellcheck` on `*.sh` files
- `markdown`: `markdownlint` on `**/*.md`
- `workflow-syntax`: `actionlint` on workflows
See `docs/WORKFLOWS.md` for complete CI pipeline documentation, exact shell commands, and the cross-repo `trigger-docs.yml` workflow.

### Local Validation

Single entrypoint:

```bash
./tooling/scripts/weave-validate.sh
```
Expand Down Expand Up @@ -743,6 +694,10 @@ claude plugin validate .
- Specs: `docs/specs/spec-XXXX-*.md`
- ADRs: `docs/decisions/ADR-XXXX-*.md`
- Architecture: `docs/ARCHITECTURE.md`
- Full command reference: `docs/QUICK-REFERENCE.md`
- CI pipeline details: `docs/WORKFLOWS.md`
- Plugin creation guide: `docs/PLUGINS.md`
- Deep engineering principles: `docs/ENGINEERING-PRINCIPLES.md`

---

Expand Down Expand Up @@ -778,7 +733,8 @@ You have SUCCEEDED when:
The following rules are maintained as separate files in `.claude/rules/` and auto-loaded at session start:

- `.claude/rules/solid-principles.md` — SOLID principles for plugin design
- `.claude/rules/thought-transparency.md` — Observable decision making, task decomposition
- `.claude/rules/engineering-principles.md` — IF/THEN routing index for Alexander's 26 engineering principles
- `.claude/rules/thought-transparency.md` — Observable decision making via Processing Log template
- `.claude/rules/devops-calms.md` — CALMS framework, DORA metrics
- `.claude/rules/error-handling.md` — Standardized error responses, validation failures

Expand Down
Loading
Loading