ima-claude 2.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +463 -0
- package/dist/cli.js +1064 -0
- package/package.json +49 -0
- package/platforms/claude/adapter.ts +115 -0
- package/platforms/junie/adapter.ts +254 -0
- package/platforms/junie/agents-template.md +113 -0
- package/platforms/junie/hook-translations.md +84 -0
- package/platforms/shared/detector.ts +27 -0
- package/platforms/shared/installer.ts +202 -0
- package/platforms/shared/types.ts +78 -0
- package/plugins/ima-claude/.claude-plugin/plugin.json +25 -0
- package/plugins/ima-claude/agents/explorer.md +30 -0
- package/plugins/ima-claude/agents/implementer.md +30 -0
- package/plugins/ima-claude/agents/memory.md +42 -0
- package/plugins/ima-claude/agents/reviewer.md +53 -0
- package/plugins/ima-claude/agents/tester.md +33 -0
- package/plugins/ima-claude/agents/wp-developer.md +46 -0
- package/plugins/ima-claude/hooks/README.md +145 -0
- package/plugins/ima-claude/hooks/atlassian_prereqs.py +112 -0
- package/plugins/ima-claude/hooks/block_sed_edits.py +59 -0
- package/plugins/ima-claude/hooks/bootstrap.sh +90 -0
- package/plugins/ima-claude/hooks/bootstrap_utility_check.py +94 -0
- package/plugins/ima-claude/hooks/composer_autoload_check.py +70 -0
- package/plugins/ima-claude/hooks/docs_organization.py +104 -0
- package/plugins/ima-claude/hooks/enforce_rg_over_grep.py +56 -0
- package/plugins/ima-claude/hooks/fp_utility_check.py +90 -0
- package/plugins/ima-claude/hooks/hook_logger.py +69 -0
- package/plugins/ima-claude/hooks/hooks.json +239 -0
- package/plugins/ima-claude/hooks/jira_issue_fetch.py +79 -0
- package/plugins/ima-claude/hooks/jquery_in_wordpress.py +92 -0
- package/plugins/ima-claude/hooks/memory_bootstrap.py +79 -0
- package/plugins/ima-claude/hooks/memory_store_reminder.py +75 -0
- package/plugins/ima-claude/hooks/prompt_coach.py +125 -0
- package/plugins/ima-claude/hooks/prompt_coach_digest.md +48 -0
- package/plugins/ima-claude/hooks/prompt_coach_system.md +30 -0
- package/plugins/ima-claude/hooks/sequential_thinking_check.py +81 -0
- package/plugins/ima-claude/hooks/serena_over_grep.py +96 -0
- package/plugins/ima-claude/hooks/serena_over_read.py +66 -0
- package/plugins/ima-claude/hooks/serena_project_check.py +133 -0
- package/plugins/ima-claude/hooks/sql_injection_check.py +73 -0
- package/plugins/ima-claude/hooks/task_master_after_plan.py +31 -0
- package/plugins/ima-claude/hooks/task_master_before_impl.py +93 -0
- package/plugins/ima-claude/hooks/tavily_extract_advanced.py +48 -0
- package/plugins/ima-claude/hooks/vestige_before_external.py +86 -0
- package/plugins/ima-claude/hooks/webfetch_to_tavily.py +42 -0
- package/plugins/ima-claude/hooks/websearch_to_tavily.py +41 -0
- package/plugins/ima-claude/hooks/wp_security_check.py +150 -0
- package/plugins/ima-claude/personalities/README.md +45 -0
- package/plugins/ima-claude/personalities/enable-40k.md +69 -0
- package/plugins/ima-claude/personalities/enable-templars.md +69 -0
- package/plugins/ima-claude/skills/.research-summary.md +340 -0
- package/plugins/ima-claude/skills/architect/SKILL.md +304 -0
- package/plugins/ima-claude/skills/compound-bridge/SKILL.md +200 -0
- package/plugins/ima-claude/skills/discourse/SKILL.md +440 -0
- package/plugins/ima-claude/skills/discourse-admin/SKILL.md +192 -0
- package/plugins/ima-claude/skills/discourse-admin/references/api-endpoints.md +441 -0
- package/plugins/ima-claude/skills/discourse-admin/references/gotchas.md +107 -0
- package/plugins/ima-claude/skills/discourse-admin/references/staging-defaults.md +98 -0
- package/plugins/ima-claude/skills/discourse-admin/scripts/discourse-admin.py +319 -0
- package/plugins/ima-claude/skills/docs-organize/SKILL.md +254 -0
- package/plugins/ima-claude/skills/docs-organize/templates/active-README.md +50 -0
- package/plugins/ima-claude/skills/docs-organize/templates/archive-README.md +57 -0
- package/plugins/ima-claude/skills/docs-organize/templates/docs-README.md +43 -0
- package/plugins/ima-claude/skills/docs-organize/templates/phase-archive-README.md +83 -0
- package/plugins/ima-claude/skills/docs-organize/templates/section-README.md +48 -0
- package/plugins/ima-claude/skills/docs-organize/templates/transient-README.md +79 -0
- package/plugins/ima-claude/skills/docs-organize/templates/transient-gitignore +9 -0
- package/plugins/ima-claude/skills/ember-discourse/SKILL.md +496 -0
- package/plugins/ima-claude/skills/functional-programmer/SKILL.md +258 -0
- package/plugins/ima-claude/skills/ima-bootstrap/SKILL.md +278 -0
- package/plugins/ima-claude/skills/ima-bootstrap/references/bootstrap-patterns.md +356 -0
- package/plugins/ima-claude/skills/ima-bootstrap/references/ima-brand.md +273 -0
- package/plugins/ima-claude/skills/ima-bootstrap/references/theme-integration.md +212 -0
- package/plugins/ima-claude/skills/ima-brand/SKILL.md +108 -0
- package/plugins/ima-claude/skills/ima-brand/references/brand-identity.md +140 -0
- package/plugins/ima-claude/skills/ima-brand/references/digital-standards.md +180 -0
- package/plugins/ima-claude/skills/ima-brand/references/visual-system.md +173 -0
- package/plugins/ima-claude/skills/ima-forms-expert/SKILL.md +175 -0
- package/plugins/ima-claude/skills/ima-forms-expert/references/container-components.md +154 -0
- package/plugins/ima-claude/skills/ima-forms-expert/references/examples.md +328 -0
- package/plugins/ima-claude/skills/ima-forms-expert/references/field-components.md +298 -0
- package/plugins/ima-claude/skills/ima-forms-expert/references/form-factory.md +193 -0
- package/plugins/ima-claude/skills/ima-forms-expert/references/quick-reference.md +153 -0
- package/plugins/ima-claude/skills/ima-forms-expert/references/validation-engine.md +336 -0
- package/plugins/ima-claude/skills/jira-checkpoint/SKILL.md +178 -0
- package/plugins/ima-claude/skills/jquery/SKILL.md +413 -0
- package/plugins/ima-claude/skills/js-fp/SKILL.md +463 -0
- package/plugins/ima-claude/skills/js-fp/core-principles.md +487 -0
- package/plugins/ima-claude/skills/js-fp/examples/pure-functions.js +260 -0
- package/plugins/ima-claude/skills/js-fp/examples/tests/pure-functions.test.js +262 -0
- package/plugins/ima-claude/skills/js-fp/references/anti-patterns.md +120 -0
- package/plugins/ima-claude/skills/js-fp/references/performance-patterns.md +116 -0
- package/plugins/ima-claude/skills/js-fp/references/testing-patterns.md +134 -0
- package/plugins/ima-claude/skills/js-fp-api/SKILL.md +280 -0
- package/plugins/ima-claude/skills/js-fp-api/examples/crud-endpoint.js +258 -0
- package/plugins/ima-claude/skills/js-fp-api/references/middleware-patterns.md +134 -0
- package/plugins/ima-claude/skills/js-fp-api/references/security-sql.md +110 -0
- package/plugins/ima-claude/skills/js-fp-api/references/validation-patterns.md +165 -0
- package/plugins/ima-claude/skills/js-fp-react/SKILL.md +447 -0
- package/plugins/ima-claude/skills/js-fp-react/examples/ProductCard.tsx +65 -0
- package/plugins/ima-claude/skills/js-fp-react/references/hooks-advanced.md +136 -0
- package/plugins/ima-claude/skills/js-fp-react/references/performance-patterns.md +175 -0
- package/plugins/ima-claude/skills/js-fp-vue/SKILL.md +322 -0
- package/plugins/ima-claude/skills/js-fp-vue/references/complete-examples.md +397 -0
- package/plugins/ima-claude/skills/js-fp-vue/references/composables-advanced.md +282 -0
- package/plugins/ima-claude/skills/js-fp-vue/references/reactivity-patterns.md +348 -0
- package/plugins/ima-claude/skills/js-fp-vue/references/testing.md +314 -0
- package/plugins/ima-claude/skills/js-fp-wordpress/SKILL.md +301 -0
- package/plugins/ima-claude/skills/js-fp-wordpress/references/ajax-patterns.md +192 -0
- package/plugins/ima-claude/skills/js-fp-wordpress/references/event-patterns.md +136 -0
- package/plugins/ima-claude/skills/js-fp-wordpress/references/wp-integration.md +248 -0
- package/plugins/ima-claude/skills/livecanvas/SKILL.md +209 -0
- package/plugins/ima-claude/skills/livecanvas/references/livecanvas-features.md +311 -0
- package/plugins/ima-claude/skills/livecanvas/references/loops-and-logic.md +730 -0
- package/plugins/ima-claude/skills/livecanvas/references/picostrap.md +227 -0
- package/plugins/ima-claude/skills/mcp-atlassian/SKILL.md +339 -0
- package/plugins/ima-claude/skills/mcp-context7/SKILL.md +109 -0
- package/plugins/ima-claude/skills/mcp-memory/SKILL.md +182 -0
- package/plugins/ima-claude/skills/mcp-qdrant/SKILL.md +233 -0
- package/plugins/ima-claude/skills/mcp-sequential/SKILL.md +149 -0
- package/plugins/ima-claude/skills/mcp-serena/SKILL.md +174 -0
- package/plugins/ima-claude/skills/mcp-tavily/SKILL.md +118 -0
- package/plugins/ima-claude/skills/mcp-vestige/SKILL.md +259 -0
- package/plugins/ima-claude/skills/php-authnet/SKILL.md +275 -0
- package/plugins/ima-claude/skills/php-authnet/references/api-reference.md +624 -0
- package/plugins/ima-claude/skills/php-authnet/references/sandbox-testing.md +424 -0
- package/plugins/ima-claude/skills/php-fp/SKILL.md +333 -0
- package/plugins/ima-claude/skills/php-fp/examples/pure-functions.php +403 -0
- package/plugins/ima-claude/skills/php-fp/examples/tests/PureFunctionsTest.php +515 -0
- package/plugins/ima-claude/skills/php-fp/references/core-principles.md +277 -0
- package/plugins/ima-claude/skills/php-fp/references/testing-patterns.md +374 -0
- package/plugins/ima-claude/skills/php-fp-wordpress/SKILL.md +216 -0
- package/plugins/ima-claude/skills/php-fp-wordpress/references/fp-patterns.md +275 -0
- package/plugins/ima-claude/skills/php-fp-wordpress/references/plugin-architecture.md +295 -0
- package/plugins/ima-claude/skills/php-fp-wordpress/references/security-examples.md +203 -0
- package/plugins/ima-claude/skills/php-fp-wordpress/references/testing-strategy.md +259 -0
- package/plugins/ima-claude/skills/phpunit-wp/SKILL.md +716 -0
- package/plugins/ima-claude/skills/playwright/SKILL.md +434 -0
- package/plugins/ima-claude/skills/playwright/references/accessibility-testing.md +153 -0
- package/plugins/ima-claude/skills/playwright/references/ci-cd.md +268 -0
- package/plugins/ima-claude/skills/playwright/references/network-mocking.md +270 -0
- package/plugins/ima-claude/skills/playwright/references/visual-regression.md +215 -0
- package/plugins/ima-claude/skills/py-fp/SKILL.md +663 -0
- package/plugins/ima-claude/skills/py-fp/examples/pure-functions.py +185 -0
- package/plugins/ima-claude/skills/py-fp/examples/tests/test_pure_functions.py +244 -0
- package/plugins/ima-claude/skills/py-fp/references/core-principles.md +381 -0
- package/plugins/ima-claude/skills/py-fp/references/testing-patterns.md +283 -0
- package/plugins/ima-claude/skills/quasar-fp/SKILL.md +327 -0
- package/plugins/ima-claude/skills/quasar-fp/metadata.json +85 -0
- package/plugins/ima-claude/skills/quasar-fp/references/component-patterns.md +257 -0
- package/plugins/ima-claude/skills/quasar-fp/references/theme-integration.md +233 -0
- package/plugins/ima-claude/skills/quasar-fp/references/utility-classes.md +237 -0
- package/plugins/ima-claude/skills/quickstart/SKILL.md +129 -0
- package/plugins/ima-claude/skills/rails/SKILL.md +359 -0
- package/plugins/ima-claude/skills/resume-session/SKILL.md +68 -0
- package/plugins/ima-claude/skills/rg/SKILL.md +205 -0
- package/plugins/ima-claude/skills/ruby-fp/SKILL.md +336 -0
- package/plugins/ima-claude/skills/save-session/SKILL.md +81 -0
- package/plugins/ima-claude/skills/scorecard/SKILL.md +96 -0
- package/plugins/ima-claude/skills/skill-analyzer/SKILL.md +127 -0
- package/plugins/ima-claude/skills/skill-analyzer/references/advanced-checklist.md +44 -0
- package/plugins/ima-claude/skills/skill-analyzer/references/core-checklist.md +60 -0
- package/plugins/ima-claude/skills/skill-analyzer/scripts/analyze_skill.py +418 -0
- package/plugins/ima-claude/skills/skill-creator/LICENSE.txt +202 -0
- package/plugins/ima-claude/skills/skill-creator/SKILL.md +343 -0
- package/plugins/ima-claude/skills/skill-creator/references/output-patterns.md +82 -0
- package/plugins/ima-claude/skills/skill-creator/references/workflows.md +28 -0
- package/plugins/ima-claude/skills/skill-creator/scripts/init_skill.py +303 -0
- package/plugins/ima-claude/skills/skill-creator/scripts/package_skill.py +110 -0
- package/plugins/ima-claude/skills/skill-creator/scripts/quick_validate.py +103 -0
- package/plugins/ima-claude/skills/task-master/SKILL.md +51 -0
- package/plugins/ima-claude/skills/task-planner/SKILL.md +228 -0
- package/plugins/ima-claude/skills/task-runner/SKILL.md +192 -0
- package/plugins/ima-claude/skills/unit-testing/SKILL.md +198 -0
- package/plugins/ima-claude/skills/unit-testing/references/mock-patterns.md +181 -0
- package/plugins/ima-claude/skills/unit-testing/references/tdd-workflow.md +177 -0
- package/plugins/ima-claude/skills/unit-testing/references/test-strategy.md +126 -0
- package/plugins/ima-claude/skills/wp-local/SKILL.md +246 -0
- package/plugins/ima-claude/skills/wp-local/references/configuration.md +198 -0
- package/plugins/ima-claude/skills/wp-local/references/wp-cli-reference.md +406 -0
- package/plugins/ima-claude/skills/wp-local/scripts/wp-local.sh +61 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 IMA
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,463 @@
|
|
|
1
|
+
# ima-claude
|
|
2
|
+
|
|
3
|
+
FP patterns, architecture guidance, and team standards for AI coding agents.
|
|
4
|
+
|
|
5
|
+
**Supports Claude Code and Junie CLI** — with an extensible adapter architecture ready for more platforms.
|
|
6
|
+
|
|
7
|
+
Built by [Independent Medical Alliance](https://imahealth.org) (formerly FLCCC)
|
|
8
|
+
|
|
9
|
+
**Core Philosophy: `Simple > Complex | Evidence > Assumptions`**
|
|
10
|
+
|
|
11
|
+
> These skills are built for IMA's team context — but most of the patterns (FP principles, architecture guidance, hooks, MCP integration, memory system) are general enough to be useful to anyone. If you're building your own AI coding toolkit, this repo can serve as a reference for structure, conventions, and what's possible. Fork it, strip the IMA-specific skills, and build your own.
|
|
12
|
+
|
|
13
|
+
## Install
|
|
14
|
+
|
|
15
|
+
### Claude Code — Plugin System (Recommended)
|
|
16
|
+
|
|
17
|
+
Inside Claude Code, run:
|
|
18
|
+
|
|
19
|
+
```
|
|
20
|
+
/plugin marketplace add https://github.com/Soabirw/ima-claude
|
|
21
|
+
/plugin install ima-claude
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
Then **restart Claude Code** to load the plugin. Verify with:
|
|
25
|
+
|
|
26
|
+
```
|
|
27
|
+
/quickstart
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
Skills are namespaced (`/ima-claude:task-master`, `/ima-claude:quickstart`, etc.) and isolated from other plugins.
|
|
31
|
+
|
|
32
|
+
**Upgrade:**
|
|
33
|
+
|
|
34
|
+
```
|
|
35
|
+
claude plugin marketplace update ima-claude
|
|
36
|
+
claude plugin update ima-claude
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
Or use `/plugin` inside Claude Code to manage updates interactively via the **Installed** tab.
|
|
40
|
+
|
|
41
|
+
### Junie CLI — Multi-Platform Installer
|
|
42
|
+
|
|
43
|
+
For Junie (or any non-plugin platform), use the interactive CLI installer:
|
|
44
|
+
|
|
45
|
+
```bash
|
|
46
|
+
npx ima-claude install
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
The installer auto-detects which platforms are available and walks you through installation:
|
|
50
|
+
|
|
51
|
+
1. **Detects platforms** — scans for Claude Code (`~/.claude`) and Junie CLI (`~/.junie`)
|
|
52
|
+
2. **Shows preview** — lists all skills, agents, and platform-specific items to install
|
|
53
|
+
3. **Allows exclusions** — skip specific skills or agents you don't need
|
|
54
|
+
4. **Installs with feedback** — step-by-step progress for each item
|
|
55
|
+
|
|
56
|
+
You can also target a specific platform directly:
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
npx ima-claude install --target junie # Junie only
|
|
60
|
+
npx ima-claude install --target claude # Claude Code only (plugin recommended instead)
|
|
61
|
+
npx ima-claude detect # Show detected platforms
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
**What's different for Junie?**
|
|
65
|
+
|
|
66
|
+
| | Claude Code | Junie CLI |
|
|
67
|
+
|---|---|---|
|
|
68
|
+
| **Skills** | Plugin system (auto) | Copied to `~/.junie/skills/` |
|
|
69
|
+
| **Agents** | Plugin system (auto) | Transformed (strips `permissionMode`) → `~/.junie/agents/` |
|
|
70
|
+
| **Hooks** | 23 Python hook scripts | No hook system — translated into behavioral guidelines |
|
|
71
|
+
| **Guidelines** | Plugin's `CLAUDE.md` injection | Generated `AGENTS.md` with persona, workflow, and hook-derived rules |
|
|
72
|
+
|
|
73
|
+
Junie doesn't support hooks, so the installer translates all 25 hook behaviors into persistent guidelines inside `AGENTS.md` — same enforcement, different mechanism.
|
|
74
|
+
|
|
75
|
+
### Adding New Platforms
|
|
76
|
+
|
|
77
|
+
The installer uses an adapter pattern. Adding support for a new platform (e.g., GitHub Copilot) means creating one file implementing the `PlatformAdapter` interface:
|
|
78
|
+
|
|
79
|
+
```
|
|
80
|
+
platforms/
|
|
81
|
+
├── shared/types.ts # PlatformAdapter interface
|
|
82
|
+
├── claude/adapter.ts # Claude Code adapter
|
|
83
|
+
└── junie/adapter.ts # Junie CLI adapter
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
See [platforms/shared/types.ts](platforms/shared/types.ts) for the interface contract.
|
|
87
|
+
|
|
88
|
+
---
|
|
89
|
+
|
|
90
|
+
## What's Included
|
|
91
|
+
|
|
92
|
+
- **Multi-Platform Installer**: Interactive CLI with auto-detection, install preview, and per-item exclusion — supports Claude Code and Junie CLI, extensible adapter architecture for more
|
|
93
|
+
- **48 Skills**: Foundational + FP implementation + domain expert + integration + meta-skills
|
|
94
|
+
- **6 Named Agents**: Explorer (haiku), Implementer (sonnet), Reviewer (sonnet), Tester (sonnet), WP Developer (sonnet), Memory (sonnet) — enforced constraints
|
|
95
|
+
- **23 Hooks**: Automatic behavioral enforcement (security, memory, workflow, Serena, code quality) — translated to guidelines for platforms without hook support
|
|
96
|
+
- **Default Persona**: "The Practitioner" - 25-year veteran mindset, collaborative, plan-first
|
|
97
|
+
- **3-Tier Memory**: Vestige (neural decay) + Qdrant (permanent library) + Serena (project workbench)
|
|
98
|
+
- **IMA Workflow**: Brainstorm → Plan → Implement → Test → Review → Document (habit-driven, not tool-enforced)
|
|
99
|
+
- **Session Management**: MCP-based save/resume via Serena (no file path confusion)
|
|
100
|
+
- **Meta-skills**: Create and analyze skills
|
|
101
|
+
- **Personalities**: Fun themed response styles (40K, Templars)
|
|
102
|
+
|
|
103
|
+
## Prerequisites
|
|
104
|
+
|
|
105
|
+
- [Claude Code](https://claude.ai/code) or [Junie CLI](https://www.jetbrains.com/help/idea/junie.html) installed
|
|
106
|
+
|
|
107
|
+
## MCP Servers (Highly Recommended)
|
|
108
|
+
|
|
109
|
+
ima-claude includes helper skills for these MCP servers. Install any that fit your workflow:
|
|
110
|
+
|
|
111
|
+
### Core MCP Servers
|
|
112
|
+
|
|
113
|
+
| MCP Server | Purpose | Setup |
|
|
114
|
+
|------------|---------|-------|
|
|
115
|
+
| **[Serena](https://github.com/oraios/serena)** | Code symbol operations, refactoring, session memory | JetBrains IDE + Serena plugin |
|
|
116
|
+
| **[Vestige](https://github.com/samvallad33/vestige)** | Cognitive memory engine (preferences, decisions, patterns) | Cargo or binary install |
|
|
117
|
+
| **[ima-qdrant-mcp-server](https://github.com/Soabirw/ima-qdrant-mcp-server)** | Permanent library (standards, PRDs, architecture, code samples) | [Docker](https://github.com/qdrant/qdrant) + Ollama + pip |
|
|
118
|
+
| **[Tavily](https://docs.tavily.com/documentation/mcp)** | Web research and current information | API key ([tavily.com](https://tavily.com)) |
|
|
119
|
+
| **[Context7](https://github.com/upstash/context7)** | Official library documentation lookup | npx |
|
|
120
|
+
| **[Sequential Thinking](https://github.com/modelcontextprotocol/servers/tree/main/src/sequentialthinking)** | Structured reasoning for complex problems | npx |
|
|
121
|
+
|
|
122
|
+
### Optional MCP Servers
|
|
123
|
+
|
|
124
|
+
| MCP Server | Purpose | Setup |
|
|
125
|
+
|------------|---------|-------|
|
|
126
|
+
| **[Memory](https://github.com/modelcontextprotocol/servers/tree/main/src/memory)** | Basic knowledge graph memory (deprecated by Vestige) | npx |
|
|
127
|
+
| **Fetch** | Web page content extraction | uvx |
|
|
128
|
+
| **Chrome DevTools** | Browser debugging capabilities | npx |
|
|
129
|
+
|
|
130
|
+
> **Recommended minimum**: Serena + Vestige + Context7 + Tavily. These four cover code ops, memory, docs, and web research.
|
|
131
|
+
|
|
132
|
+
### Marketplace Plugin (Optional)
|
|
133
|
+
|
|
134
|
+
| Plugin | Purpose | Install |
|
|
135
|
+
|--------|---------|---------|
|
|
136
|
+
| **[Compound Engineering](https://every.to/guides/compound-engineering)** | Structured workflows with 15 specialized review agents, brainstorm workflows, and research agents. | Claude Code marketplace |
|
|
137
|
+
|
|
138
|
+
> **Honorable mention**: Compound Engineering and [SuperClaude](https://github.com/SuperClaude-Org/SuperClaude_Framework) both inspired ima-claude's workflow thinking. They're excellent starting points if you don't have established workflows yet. ima-claude takes the same principles and specializes them for IMA's team context — habit-driven rather than tool-enforced.
|
|
139
|
+
|
|
140
|
+
The `compound-bridge` skill provides optional integration with Compound Engineering for teams that use both. **Only install Compound Engineering if your team actively uses it** — `compound-bridge` is a no-op without it.
|
|
141
|
+
|
|
142
|
+
### Installation Commands
|
|
143
|
+
|
|
144
|
+
> **Tip**: Many of these are available directly in the Claude Code marketplace (`/marketplace` or Settings → Marketplace). The commands below are for manual/CLI installs.
|
|
145
|
+
|
|
146
|
+
```bash
|
|
147
|
+
# Serena (requires JetBrains IDE running with Serena plugin)
|
|
148
|
+
# See: https://github.com/oraios/serena
|
|
149
|
+
claude mcp add --scope user serena -- uvx --from git+https://github.com/oraios/serena \
|
|
150
|
+
serena start-mcp-server --context=claude-code --language-backend JetBrains --project-from-cwd
|
|
151
|
+
|
|
152
|
+
# Vestige (cognitive memory)
|
|
153
|
+
cargo install vestige-mcp
|
|
154
|
+
claude mcp add --scope user vestige -- vestige-mcp
|
|
155
|
+
|
|
156
|
+
# Qdrant (document RAG) — uses ima-qdrant-mcp-server (NOT the official mcp-server-qdrant)
|
|
157
|
+
# See: https://github.com/Soabirw/ima-qdrant-mcp-server
|
|
158
|
+
docker run -d --restart unless-stopped --name qdrant -p 6333:6333 -v qdrant_storage:/qdrant/storage qdrant/qdrant:latest
|
|
159
|
+
ollama pull nomic-embed-text
|
|
160
|
+
pip install -e ~/dev/qdrant-mcp-server # or wherever you cloned it
|
|
161
|
+
claude mcp add --transport stdio --scope user qdrant-memory \
|
|
162
|
+
--env QDRANT_URL="http://localhost:6333" \
|
|
163
|
+
--env COLLECTION_NAME="ima-knowledge" \
|
|
164
|
+
-- qdrant-mcp
|
|
165
|
+
|
|
166
|
+
# Tavily (requires API key from https://tavily.com)
|
|
167
|
+
claude mcp add --scope user tavily -e TAVILY_API_KEY=your-key -- npx -y tavily-mcp@latest
|
|
168
|
+
|
|
169
|
+
# Context7
|
|
170
|
+
claude mcp add --scope user context7 -- npx -y @upstash/context7-mcp@latest
|
|
171
|
+
|
|
172
|
+
# Sequential Thinking
|
|
173
|
+
claude mcp add --scope user sequential-thinking -- npx -y @modelcontextprotocol/server-sequential-thinking@latest
|
|
174
|
+
|
|
175
|
+
# Memory (basic knowledge graph — deprecated by Vestige)
|
|
176
|
+
claude mcp add --scope user memory -- npx -y @modelcontextprotocol/server-memory@latest
|
|
177
|
+
|
|
178
|
+
# Fetch
|
|
179
|
+
claude mcp add --scope user fetch -- uvx mcp-server-fetch
|
|
180
|
+
|
|
181
|
+
# Chrome DevTools
|
|
182
|
+
claude mcp add --scope user chrome-devtools -- npx -y chrome-devtools-mcp@latest
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
Verify installation:
|
|
186
|
+
```bash
|
|
187
|
+
claude mcp list
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
### MCP Skills
|
|
191
|
+
|
|
192
|
+
ima-claude includes skills that teach Claude how to use each MCP server effectively:
|
|
193
|
+
|
|
194
|
+
| Skill | Purpose |
|
|
195
|
+
|-------|---------|
|
|
196
|
+
| **mcp-vestige** | Cognitive memory: semantic search, spaced repetition, proactive storage |
|
|
197
|
+
| **mcp-qdrant** | Permanent library: standards, PRDs, architecture, code samples |
|
|
198
|
+
| **mcp-serena** | Code symbol operations, refactoring, semantic analysis |
|
|
199
|
+
| **mcp-tavily** | Web research patterns and query optimization |
|
|
200
|
+
| **mcp-context7** | Library documentation lookup strategies |
|
|
201
|
+
| **mcp-sequential** | Structured reasoning workflows |
|
|
202
|
+
| **mcp-atlassian** | Jira & Confluence operations (Claude's bundled integration) |
|
|
203
|
+
| ~~**compound-bridge**~~ | Compound Engineering integration — **deprecated**, only useful if your team actively uses Compound Engineering |
|
|
204
|
+
|
|
205
|
+
### Session Management Skills
|
|
206
|
+
|
|
207
|
+
| Skill | Purpose |
|
|
208
|
+
|-------|---------|
|
|
209
|
+
| **save-session** | Save session state to Serena MCP memory |
|
|
210
|
+
| **resume-session** | Resume previous session from Serena MCP memory |
|
|
211
|
+
|
|
212
|
+
> **Requires Serena MCP** for cross-session persistence.
|
|
213
|
+
|
|
214
|
+
These skills auto-activate based on context.
|
|
215
|
+
|
|
216
|
+
## Tips
|
|
217
|
+
|
|
218
|
+
> **Tip:** When using `task-runner` to spawn multiple agents, sub-agents may get stuck waiting for permission prompts. Use `--dangerously-skip-permissions` to let agents run autonomously:
|
|
219
|
+
>
|
|
220
|
+
> ```bash
|
|
221
|
+
> claude --dangerously-skip-permissions
|
|
222
|
+
> ```
|
|
223
|
+
>
|
|
224
|
+
> **Use with care** — this skips all permission checks. Best for local development on trusted codebases.
|
|
225
|
+
|
|
226
|
+
## IMA Workflow
|
|
227
|
+
|
|
228
|
+
Our development workflow is habit-driven, not tool-enforced. No plugins required — just good practice.
|
|
229
|
+
|
|
230
|
+
| Step | Where | What |
|
|
231
|
+
|------|-------|------|
|
|
232
|
+
| **1. Brainstorm** | Claude Web Project spaces | Initial ideation, flush out early concepts into viable plans. Project spaces give Claude rich context without cluttering Code sessions. |
|
|
233
|
+
| **2. Plan** | Claude Code — Plan Mode | Enter Plan Mode with the finalized concept. Claude Code knows the specific project and codebase. Produce a concrete implementation plan. |
|
|
234
|
+
| **3. Implement** | Claude Code — `task-planner` → `task-runner` | Break the plan into tasks (`task-planner`), then delegate to agents (`task-runner`). Each agent gets relevant skills and the right model. |
|
|
235
|
+
| **4. Test** | Claude Code + browser/manual | Unit tests for logic. Human testing for UX and edge cases. |
|
|
236
|
+
| **5. Review** | Fresh Claude Code terminal | Run `/scorecard` and targeted reviews. Findings may cycle back to step 3, 4, or even step 2 if significant. |
|
|
237
|
+
| **6. Document** | Confluence, Jira, Qdrant, Serena, Vestige | Update everything. This is what makes the system smarter over time. |
|
|
238
|
+
|
|
239
|
+
> **Why habit over tools?** Enforced workflows create overhead. When the habits are genuinely useful, they stick naturally. When they don't fit the task, skip a step — no tool will argue.
|
|
240
|
+
|
|
241
|
+
## Available Agents
|
|
242
|
+
|
|
243
|
+
Named subagents with hard constraints — model, tools, and permissions enforced at runtime, not just by prompt. Skills are pre-loaded at startup. The orchestrator (`task-runner`) delegates to these automatically.
|
|
244
|
+
|
|
245
|
+
| Agent | Model | Mode | Pre-loaded Skills | Use For |
|
|
246
|
+
|-------|-------|------|-------------------|---------|
|
|
247
|
+
| `ima-claude:explorer` | haiku | read-only | — | File discovery, architecture understanding, code search |
|
|
248
|
+
| `ima-claude:implementer` | sonnet | full access | `functional-programmer` | Feature dev, bug fixes, refactoring, tests |
|
|
249
|
+
| `ima-claude:reviewer` | sonnet | read-only | `functional-programmer` | Code review, security audit, FP compliance |
|
|
250
|
+
| `ima-claude:tester` | sonnet | full access | `unit-testing`, `functional-programmer` | Test creation, TDD, test running, debugging failures |
|
|
251
|
+
| `ima-claude:wp-developer` | sonnet | full access | `php-fp`, `php-fp-wordpress`, `wp-local`, `ima-forms-expert`, `ima-bootstrap`, `jquery` | WordPress plugins, themes, WP-CLI, forms |
|
|
252
|
+
| `ima-claude:memory` | sonnet | full access | `mcp-vestige`, `mcp-qdrant`, `mcp-serena` | Memory search, storage, consolidation across Vestige/Qdrant/Serena |
|
|
253
|
+
|
|
254
|
+
Agents are auto-discovered from `plugins/ima-claude/agents/`. No manifest changes needed to add new ones.
|
|
255
|
+
|
|
256
|
+
## Available Skills
|
|
257
|
+
|
|
258
|
+
### Foundational Skills
|
|
259
|
+
|
|
260
|
+
| Skill | Description |
|
|
261
|
+
|-------|-------------|
|
|
262
|
+
| `functional-programmer` | FP principles and philosophy (no code - concepts only) |
|
|
263
|
+
| `task-master` | Orchestration umbrella — dispatches to task-planner and task-runner |
|
|
264
|
+
| `task-planner` | Decomposition: Epic > Story > Task hierarchy, storage strategy |
|
|
265
|
+
| `task-runner` | Delegation: model selection, skill assignment, agent execution |
|
|
266
|
+
|
|
267
|
+
### FP Implementation Skills
|
|
268
|
+
|
|
269
|
+
| Skill | Description |
|
|
270
|
+
|-------|-------------|
|
|
271
|
+
| `js-fp` | JavaScript FP core - anti-over-engineering, native patterns |
|
|
272
|
+
| `js-fp-api` | Node.js API patterns with security-first SQL |
|
|
273
|
+
| `js-fp-react` | React FP patterns with hooks and HOCs |
|
|
274
|
+
| `js-fp-vue` | Vue 3 FP patterns with composables |
|
|
275
|
+
| `js-fp-wordpress` | WordPress JS patterns for Bootstrap/jQuery |
|
|
276
|
+
| `jquery` | jQuery patterns and API reference (WordPress-native) |
|
|
277
|
+
| `php-fp` | PHP FP core principles |
|
|
278
|
+
| `php-fp-wordpress` | Security-first WordPress PHP development |
|
|
279
|
+
| `py-fp` | Python FP core - comprehensions, generators, frozen dataclasses |
|
|
280
|
+
| `quasar-fp` | Quasar Framework with utility-first CSS |
|
|
281
|
+
|
|
282
|
+
### Domain Expert Skills
|
|
283
|
+
|
|
284
|
+
| Skill | Description |
|
|
285
|
+
|-------|-------------|
|
|
286
|
+
| `architect` | System design expertise and principles |
|
|
287
|
+
| `ima-brand` | IMA Brand Book v4.0 (identity, voice, logo, content) |
|
|
288
|
+
| `ima-bootstrap` | Bootstrap 5.3 + IMA brand (utility-first CSS, SCSS) |
|
|
289
|
+
| `playwright` | E2E testing with Playwright + TypeScript |
|
|
290
|
+
| `docs-organize` | Three-tier documentation organization |
|
|
291
|
+
| `wp-local` | WP-CLI commands for Flywheel Local WP |
|
|
292
|
+
| `jira-checkpoint` | Jira awareness checkpoints for team visibility |
|
|
293
|
+
| `phpunit-wp` | PHPUnit testing for WordPress plugins with FP principles |
|
|
294
|
+
| `rg` | Ripgrep usage patterns |
|
|
295
|
+
| `ima-forms-expert` | WordPress form components (IMA Forms) |
|
|
296
|
+
| `discourse-admin` | Discourse admin API (site settings, config export/import, groups) |
|
|
297
|
+
| `ima-cancer-care-guides` | Cancer care guide document pipeline (DOCX → markdown → HTML → PDF, Canva mapping) |
|
|
298
|
+
|
|
299
|
+
### Integration Skills
|
|
300
|
+
|
|
301
|
+
| Skill | Description |
|
|
302
|
+
|-------|-------------|
|
|
303
|
+
| `compound-bridge` | Compound Engineering integration (memory bridge, role separation) |
|
|
304
|
+
| `mcp-vestige` | Cognitive memory: preferences, decisions, patterns |
|
|
305
|
+
| `mcp-qdrant` | Permanent library: standards, PRDs, architecture, code samples |
|
|
306
|
+
| `mcp-serena` | Code symbol operations, refactoring, semantic analysis |
|
|
307
|
+
| `mcp-atlassian` | Jira & Confluence operations |
|
|
308
|
+
| `mcp-tavily` | Web research and query optimization |
|
|
309
|
+
| `mcp-context7` | Library documentation lookup strategies |
|
|
310
|
+
| `mcp-sequential` | Structured reasoning workflows |
|
|
311
|
+
| ~~`mcp-memory`~~ | **Deprecated** — replaced by `mcp-vestige` |
|
|
312
|
+
|
|
313
|
+
### Meta Skills
|
|
314
|
+
|
|
315
|
+
| Skill | Description |
|
|
316
|
+
|-------|-------------|
|
|
317
|
+
| `skill-analyzer` | Analyze and improve existing skills |
|
|
318
|
+
| `skill-creator` | Create new skills following best practices |
|
|
319
|
+
|
|
320
|
+
## How Skills Work
|
|
321
|
+
|
|
322
|
+
Skills are automatically discovered by Claude Code. Simply mention the skill's domain:
|
|
323
|
+
|
|
324
|
+
```
|
|
325
|
+
"Help me implement this React component following FP patterns"
|
|
326
|
+
# → js-fp-react skill auto-activates
|
|
327
|
+
|
|
328
|
+
"Design a scalable API for user authentication"
|
|
329
|
+
# → js-fp-api skill auto-activates
|
|
330
|
+
|
|
331
|
+
"Create a WordPress plugin for forms"
|
|
332
|
+
# → php-fp-wordpress skill auto-activates
|
|
333
|
+
```
|
|
334
|
+
|
|
335
|
+
Or explicitly request a skill:
|
|
336
|
+
|
|
337
|
+
```
|
|
338
|
+
"Use the js-fp skill to review this code"
|
|
339
|
+
```
|
|
340
|
+
|
|
341
|
+
## Hooks (23 Behavioral Hooks)
|
|
342
|
+
|
|
343
|
+
Hooks enforce skill behaviors automatically — Claude can't skip them. All hooks are soft warnings (exit 0) that guide without blocking.
|
|
344
|
+
|
|
345
|
+
| Category | Hooks | What They Enforce |
|
|
346
|
+
|----------|-------|-------------------|
|
|
347
|
+
| **Tool Redirection** | `enforce_rg_over_grep`, `webfetch_to_tavily`, `websearch_to_tavily`, `tavily_extract_advanced` | Use preferred tools (rg over grep, Tavily over WebFetch/WebSearch) |
|
|
348
|
+
| **Memory System** | `memory_bootstrap`, `memory_store_reminder`, `vestige_before_external` | Search Vestige/Qdrant at session start; store after edits; check memory before external lookups |
|
|
349
|
+
| **Workflow** | `task_master_after_plan`, `task_master_before_impl`, `jira_issue_fetch` | Delegate after planning; task-master before implementation; auto-fetch Jira issues |
|
|
350
|
+
| **Security** | `wp_security_check`, `sql_injection_check` | WordPress AJAX security 5-pack + strict_types; SQL injection detection in JS/TS |
|
|
351
|
+
| **Atlassian** | `atlassian_prereqs` | cloudId bootstrap, getTransitions before transition, ADF body serialization |
|
|
352
|
+
| **Serena** | `serena_project_check`, `serena_over_grep` | WP plugin subdirectory project path fix; prefer Serena symbol tools over Grep for code navigation |
|
|
353
|
+
| **Code Quality** | `fp_utility_check`, `jquery_in_wordpress`, `bootstrap_utility_check`, `composer_autoload_check`, `docs_organization` | No custom FP utilities; jQuery in WP; Bootstrap utilities over inline CSS; composer autoload bug; docs organization |
|
|
354
|
+
| **Prompt Coaching** | `prompt_coach` | Haiku-powered prompt feedback (experimental) |
|
|
355
|
+
|
|
356
|
+
See [hooks/README.md](hooks/README.md) for details.
|
|
357
|
+
|
|
358
|
+
## Prompt Coach (Experimental)
|
|
359
|
+
|
|
360
|
+
**Haiku-powered prompt feedback system** that analyzes your prompts before they reach Claude, suggesting relevant skills and catching anti-patterns. Stays silent when you're on track, speaks up when it can help.
|
|
361
|
+
|
|
362
|
+
See [docs/PROMPT_COACH.md](docs/PROMPT_COACH.md) for setup, configuration, and usage.
|
|
363
|
+
|
|
364
|
+
## Personalities (Optional Fun)
|
|
365
|
+
|
|
366
|
+
Themed response styles that change Claude's tone without affecting expertise:
|
|
367
|
+
|
|
368
|
+
- **enable-40k**: Warhammer 40K themed code purification
|
|
369
|
+
- **enable-templars**: Templar crusader themed responses
|
|
370
|
+
|
|
371
|
+
Usage:
|
|
372
|
+
```
|
|
373
|
+
"Enable 40k mode and review this code"
|
|
374
|
+
```
|
|
375
|
+
|
|
376
|
+
## Projects (Manual Setup)
|
|
377
|
+
|
|
378
|
+
Example research projects for **Claude Web Projects** and **Claude Code**. These are not part of the automated install—use them manually or as templates for building your own domain-specific assistants.
|
|
379
|
+
|
|
380
|
+
| Project | Description |
|
|
381
|
+
|---------|-------------|
|
|
382
|
+
| `patristic-researcher` | Early Church Fathers research (~30-430 AD) |
|
|
383
|
+
| `mecha-thomas` | Thomistic research with Chestertonian voice |
|
|
384
|
+
| `mecha-alphonsus` | Marian theology in St. Alphonsus' style |
|
|
385
|
+
|
|
386
|
+
**Usage:**
|
|
387
|
+
```bash
|
|
388
|
+
# Claude Code: Launch from project directory
|
|
389
|
+
cd ~/dev/ima-claude/projects/patristic-researcher
|
|
390
|
+
claude
|
|
391
|
+
|
|
392
|
+
# Claude Web: Copy instructions.md, upload files/ to Project Knowledge
|
|
393
|
+
```
|
|
394
|
+
|
|
395
|
+
See [projects/README.md](projects/README.md) for setup guide and instructions for building your own projects.
|
|
396
|
+
|
|
397
|
+
## Architecture
|
|
398
|
+
|
|
399
|
+
ima-claude follows a **Persona + Skills** architecture:
|
|
400
|
+
|
|
401
|
+
- **Default Persona** - "The Practitioner" provides foundational mindset (FP, composition, plan-first)
|
|
402
|
+
- **Skills contain expertise** - Domain knowledge, patterns, implementation guidance
|
|
403
|
+
- **Personalities overlay tone** - Fun themes (40K, Templars) without changing expertise
|
|
404
|
+
- **MCP integration** - Serena for code ops, Vestige for memory, Qdrant for RAG, Tavily for research
|
|
405
|
+
- **Platform adapters** - Shared `PlatformAdapter` interface; each platform implements detect, preview, install, and guideline generation
|
|
406
|
+
|
|
407
|
+
This makes ima-claude:
|
|
408
|
+
1. **Multi-platform** - Same skills and agents across Claude Code, Junie CLI, and future platforms
|
|
409
|
+
2. **Fully standalone** - Complete system without dependencies
|
|
410
|
+
3. **Consistent** - Same mindset across all interactions
|
|
411
|
+
4. **Efficient** - Skills load on-demand based on context
|
|
412
|
+
5. **Extensible** - Add your own skills, agents, or platform adapters
|
|
413
|
+
|
|
414
|
+
## For Teams
|
|
415
|
+
|
|
416
|
+
### Onboarding
|
|
417
|
+
|
|
418
|
+
See [docs/ONBOARDING.md](docs/ONBOARDING.md) for team onboarding guide.
|
|
419
|
+
|
|
420
|
+
### Private Skills
|
|
421
|
+
|
|
422
|
+
Create project-specific skills in `templates/local-skills/`:
|
|
423
|
+
|
|
424
|
+
```
|
|
425
|
+
~/.claude/skills/
|
|
426
|
+
├── js-fp/ # From ima-claude (public)
|
|
427
|
+
├── php-fp/ # From ima-claude (public)
|
|
428
|
+
└── my-company-api/ # Your private skill
|
|
429
|
+
```
|
|
430
|
+
|
|
431
|
+
Private skills are gitignored and not published.
|
|
432
|
+
|
|
433
|
+
### Customization
|
|
434
|
+
|
|
435
|
+
Copy `templates/CLAUDE.md.example` to `~/.claude/CLAUDE.md` and customize:
|
|
436
|
+
|
|
437
|
+
```markdown
|
|
438
|
+
# My Team's Claude Config
|
|
439
|
+
|
|
440
|
+
@skills/js-fp/SKILL.md
|
|
441
|
+
@skills/my-company-api/SKILL.md
|
|
442
|
+
|
|
443
|
+
## Our Standards
|
|
444
|
+
- All code must follow FP patterns from js-fp skill
|
|
445
|
+
- Use our company API patterns for backend work
|
|
446
|
+
```
|
|
447
|
+
|
|
448
|
+
## Migration
|
|
449
|
+
|
|
450
|
+
- **Legacy → Plugin**: See [MIGRATION_GUIDE.md](MIGRATION_GUIDE.md)
|
|
451
|
+
- **Old `/fp:*` commands**: See [docs/MIGRATING-FROM-COMMANDS.md](docs/MIGRATING-FROM-COMMANDS.md)
|
|
452
|
+
|
|
453
|
+
## Contributing
|
|
454
|
+
|
|
455
|
+
1. Fork the repository
|
|
456
|
+
2. Create a feature branch
|
|
457
|
+
3. Make your changes
|
|
458
|
+
4. Test your changes locally
|
|
459
|
+
5. Submit a pull request
|
|
460
|
+
|
|
461
|
+
## License
|
|
462
|
+
|
|
463
|
+
MIT - See [LICENSE](LICENSE)
|