xtrm-tools 2.1.20 → 2.1.22
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/README.md +81 -709
- package/cli/package.json +1 -1
- package/config/pi/extensions/beads.ts +81 -0
- package/config/pi/extensions/core/adapter.ts +45 -0
- package/config/pi/extensions/core/lib.ts +3 -0
- package/config/pi/extensions/core/logger.ts +45 -0
- package/config/pi/extensions/core/runner.ts +71 -0
- package/config/pi/extensions/custom-footer.ts +19 -53
- package/config/pi/extensions/main-guard-post-push.ts +44 -0
- package/config/pi/extensions/main-guard.ts +126 -0
- package/config/pi/extensions/quality-gates.ts +67 -0
- package/config/pi/extensions/service-skills.ts +88 -0
- package/config/pi/extensions/xtrm-loader.ts +89 -0
- package/hooks/README.md +35 -310
- package/package.json +1 -1
- package/config/pi/extensions/git-guard.ts +0 -45
- package/config/pi/extensions/safe-guard.ts +0 -46
package/README.md
CHANGED
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
**Claude Code tools installer** — skills, hooks, MCP servers, and project-specific extensions.
|
|
4
4
|
|
|
5
|
-
> **ARCHITECTURAL DECISION (v2.0.0):** xtrm-tools
|
|
5
|
+
> **ARCHITECTURAL DECISION (v2.0.0+):** xtrm-tools supports **Claude Code exclusively**. Hook translation for Gemini CLI and Qwen CLI was removed.
|
|
6
|
+
|
|
7
|
+
> **MIGRATION NOTICE (v2.1.20+):** Core logic has moved to **Pi Extensions**. See the [Pi Extensions Migration Guide](docs/pi-extensions-migration.md).
|
|
6
8
|
|
|
7
9
|
This repository contains production-ready extensions to enhance Claude's capabilities with prompt improvement, task delegation, development workflow automation, and quality gates. The `xtrm` CLI provides a robust, modular "Plug & Play" installation engine for project-specific tools.
|
|
8
10
|
|
|
@@ -15,247 +17,78 @@ cd xtrm-tools/cli
|
|
|
15
17
|
npm install && npm run build
|
|
16
18
|
npm link
|
|
17
19
|
|
|
18
|
-
#
|
|
19
|
-
xtrm
|
|
20
|
+
# Initialize a project and register gitnexus MCP
|
|
21
|
+
xtrm project init
|
|
20
22
|
```
|
|
21
23
|
|
|
22
24
|
## Table of Contents
|
|
23
25
|
|
|
24
|
-
- [Skills](#skills)
|
|
25
|
-
- [
|
|
26
|
+
- [Project Skills & Hooks](#project-skills--hooks)
|
|
27
|
+
- [Global Skills](#global-skills)
|
|
26
28
|
- [Installation](#installation)
|
|
27
|
-
- [
|
|
29
|
+
- [CLI User Guide](#cli-user-guide)
|
|
28
30
|
- [Configuration](#configuration)
|
|
29
|
-
- [Documentation](#documentation)
|
|
30
31
|
- [Version History](#version-history)
|
|
31
32
|
- [License](#license)
|
|
32
33
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
### prompt-improving
|
|
36
|
-
|
|
37
|
-
Automatically improves user prompts using Claude's XML best practices before execution.
|
|
38
|
-
|
|
39
|
-
- **Invocation**: `/prompt [prompt]` or `/prompt-improving [prompt]`
|
|
40
|
-
- **Purpose**: Applies semantic XML structure, multishot examples, and chain-of-thought patterns
|
|
41
|
-
- **Hook**: `skill-suggestion.py`
|
|
42
|
-
- **Version**: 5.1.0
|
|
43
|
-
|
|
44
|
-
### delegating
|
|
45
|
-
|
|
46
|
-
Unified task delegation system supporting both CCS (cost-optimized) and unitAI (multi-agent workflows).
|
|
47
|
-
|
|
48
|
-
- **Invocation**: `/delegate [task]` or `/delegating [task]`
|
|
49
|
-
- **Purpose**: Auto-selects optimal backend for task execution
|
|
50
|
-
- **CCS**: Simple tasks (tests, typos, docs) → GLM/Gemini/Qwen
|
|
51
|
-
- **unitAI**: Complex tasks (code review, feature dev, debugging) → Multi-agent workflows
|
|
52
|
-
- **Hook**: `skill-suggestion.sh` (triggers on "delegate" keyword)
|
|
53
|
-
- **Config**: `skills/delegation/config.yaml` (user-customizable patterns)
|
|
54
|
-
- **Version**: 6.0.0
|
|
55
|
-
|
|
56
|
-
**Key Features**:
|
|
57
|
-
- Configuration-driven pattern matching
|
|
58
|
-
- Autonomous workflow selection for unitAI
|
|
59
|
-
- Interactive 2-step menu (Delegate? → Backend?)
|
|
60
|
-
- Auto-focus detection (security/performance/quality)
|
|
61
|
-
- Override flags (`--glm`, `--unitai`, etc.)
|
|
62
|
-
|
|
63
|
-
**Deprecates**: `/ccs-delegation` (v5.0.0) - use `/delegation` instead
|
|
64
|
-
|
|
65
|
-
### orchestrating-agents
|
|
66
|
-
|
|
67
|
-
Orchestrates task handoff and deep multi-turn "handshaking" sessions between Gemini and Qwen CLI agents.
|
|
68
|
-
|
|
69
|
-
- **Invocation**: `/orchestrate [workflow-type] [task]` (workflow-type optional)
|
|
70
|
-
- **Purpose**: Facilitates multi-model collaboration, adversarial reviews, and deep troubleshooting.
|
|
71
|
-
- **Workflows**:
|
|
72
|
-
- **Collaborative Design** (`collaborative`): Proposal -> Critique -> Refinement (for features).
|
|
73
|
-
- **Adversarial Review** (`adversarial`): Proposal -> Red Team Attack -> Defense (for security).
|
|
74
|
-
- **Troubleshoot Session** (`troubleshoot`): Multi-agent hypothesis testing (for emergencies).
|
|
75
|
-
- **Single Handshake** (`handshake`): Quick one-turn second opinion.
|
|
76
|
-
- **Examples**:
|
|
77
|
-
- `/orchestrate adversarial "Review payment security"`
|
|
78
|
-
- `/orchestrate "Design auth system"` (interactive workflow selection)
|
|
79
|
-
- **Hook**: None (Direct slash command)
|
|
80
|
-
- **Version**: 1.2.0
|
|
81
|
-
|
|
82
|
-
**Key Features**:
|
|
83
|
-
- Parameter-based workflow selection for direct invocation
|
|
84
|
-
- Interactive fallback when no workflow specified
|
|
85
|
-
- Corrected resume flags for multi-turn sessions (Gemini: `-r latest`, Qwen: `-c`)
|
|
86
|
-
|
|
87
|
-
### using-serena-lsp
|
|
88
|
-
|
|
89
|
-
Master workflow combining Serena MCP semantic tools with LSP plugins for efficient code editing.
|
|
90
|
-
|
|
91
|
-
- **Invocation**: Auto-suggested via hooks
|
|
92
|
-
- **Purpose**: Surgical code editing with 75-80% token savings
|
|
93
|
-
- **Hook**: `serena-workflow-reminder.py`
|
|
94
|
-
- **Origin**: Serena MCP
|
|
95
|
-
|
|
96
|
-
### documenting
|
|
97
|
-
|
|
98
|
-
Maintains Single Source of Truth (SSOT) documentation system for projects.
|
|
99
|
-
|
|
100
|
-
- **Invocation**: `/document [task]` or skill commands
|
|
101
|
-
- **Purpose**: Create, update, validate SSOT documentation
|
|
102
|
-
- **Hook**: None
|
|
103
|
-
- **Origin**: Serena MCP
|
|
104
|
-
- **Version**: 2.0.0 (with drift detection and INDEX blocks)
|
|
105
|
-
|
|
106
|
-
**Key Features**:
|
|
107
|
-
- `tracks:` frontmatter field for automatic drift detection
|
|
108
|
-
- Auto-generated INDEX tables for navigation without full reads
|
|
109
|
-
- Stop hook fires at session end to detect stale memories
|
|
110
|
-
- Decision table for when to update SSOT vs changelog only
|
|
111
|
-
|
|
112
|
-
### obsidian-cli
|
|
113
|
-
|
|
114
|
-
Interact with Obsidian vaults using the Obsidian CLI.
|
|
115
|
-
|
|
116
|
-
- **Invocation**: Auto-loaded when working with Obsidian tasks
|
|
117
|
-
- **Purpose**: Read, create, search, and manage notes, tasks, properties
|
|
118
|
-
- **Hook**: None
|
|
119
|
-
- **Version**: 1.0.0
|
|
120
|
-
|
|
121
|
-
**Key Features**:
|
|
122
|
-
- Full CLI command reference (create, read, search, daily notes, tasks)
|
|
123
|
-
- Plugin development workflow (reload, error capture, screenshots, DOM inspection)
|
|
124
|
-
- Vault targeting with `vault=<name>` parameter
|
|
125
|
-
- File targeting with `file=` (wikilink-style) or `path=` (exact path)
|
|
126
|
-
|
|
127
|
-
### gitnexus (4 skills)
|
|
128
|
-
|
|
129
|
-
Knowledge graph-powered code intelligence skills.
|
|
34
|
+
---
|
|
130
35
|
|
|
131
|
-
|
|
132
|
-
- **Purpose**: Semantic code understanding with 75-80% token savings
|
|
133
|
-
- **Hook**: `gitnexus-hook.cjs` (PreToolUse for Grep|Glob|Bash)
|
|
134
|
-
- **Version**: 1.0.0
|
|
36
|
+
## Project Skills & Hooks
|
|
135
37
|
|
|
136
|
-
|
|
137
|
-
- `gitnexus/exploring` — Architecture understanding ("How does X work?")
|
|
138
|
-
- `gitnexus/debugging` — Bug tracing ("Why is X failing?")
|
|
139
|
-
- `gitnexus/impact-analysis` — Blast radius ("What breaks if I change X?")
|
|
140
|
-
- `gitnexus/refactoring` — Surgical refactors (rename, extract, split)
|
|
38
|
+
Project skills are modular, plug-and-play tool packages extending Claude's capabilities for specific workflows. They install into your project's `.claude/` directory and include specific hooks enforcing local workflow rules and quality gates.
|
|
141
39
|
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
-
|
|
145
|
-
-
|
|
146
|
-
-
|
|
147
|
-
- `rename` — Multi-file coordinated rename
|
|
148
|
-
- `cypher` — Raw graph queries
|
|
40
|
+
### using-xtrm (Session Operating Manual)
|
|
41
|
+
**The foundational operating manual for an xtrm-equipped session.**
|
|
42
|
+
- **Invocation**: Activates automatically at session start via hook.
|
|
43
|
+
- **Purpose**: Orients the agent on how to work within the xtrm stack: applying prompt improvement, using the beads issue-tracking gate, enforcing PR workflows, and combining the full toolset (gitnexus, Serena, TDD guard, quality gates, delegation).
|
|
44
|
+
- **Core Workflow**: Provides the authoritative guide on feature-branch usage, requiring PRs for merges (with `--squash`), and stopping dangerous git commands on protected branches.
|
|
149
45
|
|
|
150
|
-
###
|
|
46
|
+
### TDD Guard & Quality Gates (`tdd-guard` & `using-quality-gates`)
|
|
47
|
+
- **tdd-guard**: Enforces Test-Driven Development by blocking implementation until failing tests exist. Now covers **Serena edit tools** via bridge behavior.
|
|
48
|
+
- **using-quality-gates**: Unified PostToolUse code quality hooks — runs linting, type checking, and formatting (Python + TypeScript with strict mypy/ruff rules) on every edit.
|
|
151
49
|
|
|
50
|
+
### Service Skills Set (Trinity)
|
|
152
51
|
Task intake and service routing for Docker service projects.
|
|
52
|
+
- **Invocation**: `/scope "task description"` or automatic via SessionStart hook.
|
|
53
|
+
- **Purpose**: Gives Claude persistent, service-specific expertise without re-explaining architecture. Emits structured scope plans and detects codebase drift via PostToolUse hooks.
|
|
153
54
|
|
|
154
|
-
|
|
155
|
-
- **Purpose**: Detect intent, map to expert service skills, emit structured scope plan
|
|
156
|
-
- **Hook**: None (invoked before investigation/feature/refactor tasks)
|
|
157
|
-
- **Version**: 1.0.0
|
|
158
|
-
|
|
159
|
-
**Intent Taxonomy**:
|
|
160
|
-
- `investigation` — Errors, failures, issues (default when ambiguous)
|
|
161
|
-
- `feature` — New functionality
|
|
162
|
-
- `refactor` — Restructuring, cleanup
|
|
163
|
-
- `config-change` — Configuration updates
|
|
164
|
-
- `exploration` — Understanding, explanations
|
|
165
|
-
|
|
166
|
-
**Workflow**:
|
|
167
|
-
1. Read service registry
|
|
168
|
-
2. Detect intent from keywords
|
|
169
|
-
3. Map to registered services
|
|
170
|
-
4. Emit XML scope block with diagnosis → fix → regression-test phases
|
|
171
|
-
|
|
172
|
-
## Hooks
|
|
173
|
-
|
|
174
|
-
### Skill-Associated Hooks
|
|
175
|
-
|
|
176
|
-
**skill-suggestion.py**
|
|
177
|
-
- Skills: `prompt-improving`, `delegating`, `using-quality-gates`
|
|
178
|
-
- Trigger: UserPromptSubmit
|
|
179
|
-
- Purpose: Proactive skill suggestions based on prompt analysis
|
|
180
|
-
- Config: `settings.json` → `skillSuggestions.enabled: true`
|
|
181
|
-
|
|
182
|
-
**skill-discovery.py**
|
|
183
|
-
- Skills: All `skills/` directory skills
|
|
184
|
-
- Trigger: SessionStart
|
|
185
|
-
- Purpose: Injects summarized skill catalog at session start
|
|
186
|
-
- Config: Auto-wired in `settings.json`
|
|
187
|
-
|
|
188
|
-
**serena-workflow-reminder.py**
|
|
189
|
-
- Skill: `using-serena-lsp`
|
|
190
|
-
- Trigger: SessionStart, PreToolUse (Read|Edit)
|
|
191
|
-
- Purpose: Enforces semantic Serena LSP workflow
|
|
192
|
-
|
|
193
|
-
**gitnexus-hook.cjs**
|
|
194
|
-
- Skills: `gitnexus/*` (4 skills)
|
|
195
|
-
- Trigger: PreToolUse (Grep|Glob|Bash)
|
|
196
|
-
- Purpose: Enriches tool calls with knowledge graph context via `gitnexus augment`
|
|
197
|
-
- Config: Auto-wired in `settings.json`
|
|
55
|
+
### Core Project Hooks
|
|
198
56
|
|
|
199
|
-
**
|
|
200
|
-
- Trigger
|
|
201
|
-
- Purpose
|
|
202
|
-
-
|
|
57
|
+
**Main Guard (`main-guard.mjs`)**
|
|
58
|
+
- **Trigger**: PreToolUse (Write|Edit|MultiEdit|Serena edit tools|Bash)
|
|
59
|
+
- **Purpose**: Enforces PR-only merge workflow with full git protection. Blocks direct commits and dangerous `git checkout` / `git push` commands on protected branches (`main/master`).
|
|
60
|
+
- **Post-Push (`main-guard-post-push.mjs`)**: After pushing a feature branch, reminds to use `gh pr merge --squash` and sync local via `git reset --hard origin/main`.
|
|
203
61
|
|
|
204
|
-
|
|
62
|
+
**GitNexus Graph Context (`gitnexus-hook.cjs`)**
|
|
63
|
+
- **Trigger**: PostToolUse (with Serena support and dedup cache)
|
|
64
|
+
- **Purpose**: Enriches tool output with knowledge graph context via `gitnexus augment`.
|
|
65
|
+
- *Note: `gitnexus-impact-reminder` was removed as impact analysis enforcement is now native.*
|
|
205
66
|
|
|
206
|
-
**
|
|
207
|
-
- Trigger
|
|
208
|
-
- Purpose
|
|
67
|
+
**Beads Issue Tracking Gates**
|
|
68
|
+
- **Trigger**: PreToolUse, PostToolUse, Stop, PreCompact, SessionStart
|
|
69
|
+
- **Purpose**: Ensures all work is tracked to a `bd` issue. Blocks file edits without an active claim.
|
|
70
|
+
- **Compaction**: Newly added `PreCompact` and `SessionStart` hooks preserve `in_progress` beads state across `/compact` events. Hook blocking messages are quieted and compacted to save tokens.
|
|
209
71
|
|
|
210
|
-
|
|
211
|
-
- Trigger: PostToolUse (Bash: git push)
|
|
212
|
-
- Purpose: After pushing feature branch, reminds to open PR, merge, and sync local
|
|
213
|
-
|
|
214
|
-
**type-safety-enforcement.py**
|
|
215
|
-
- Trigger: PreToolUse (Bash|Edit|Write)
|
|
216
|
-
- Purpose: Enforce type safety in Python code
|
|
217
|
-
|
|
218
|
-
**agent_context.py**
|
|
219
|
-
- Trigger: Support module used by Python hooks
|
|
220
|
-
- Purpose: Shared hook input/output helper
|
|
221
|
-
|
|
222
|
-
**beads gate hooks** (installed with `xtrm install all`, or included when beads+dolt is available):
|
|
223
|
-
- `beads-edit-gate.mjs` (PreToolUse) — Blocks writes without active issue claim
|
|
224
|
-
- `beads-commit-gate.mjs` (PreToolUse) — Blocks commits with unresolved session claim
|
|
225
|
-
- `beads-stop-gate.mjs` (Stop) — Blocks session stop while claim remains open
|
|
226
|
-
- `beads-close-memory-prompt.mjs` (PostToolUse) — Prompts memory handoff after `bd close`
|
|
227
|
-
|
|
228
|
-
### PostToolUse Hooks
|
|
229
|
-
- `main-guard-post-push.mjs` — After feature-branch push, reminds PR/merge/sync steps
|
|
230
|
-
|
|
231
|
-
## Project Skills
|
|
232
|
-
|
|
233
|
-
**Project Skills** are modular, plug-and-play tool packages that extend Claude's capabilities for specific workflows. Each skill includes pre-configured hooks, context skills, and documentation.
|
|
72
|
+
---
|
|
234
73
|
|
|
235
|
-
|
|
74
|
+
## Global Skills
|
|
236
75
|
|
|
237
|
-
|
|
238
|
-
|-------|-------------|-----------|
|
|
239
|
-
| `quality-gates` | Unified PostToolUse code quality hooks — runs linting, type checking, and formatting on every edit | PostToolUse |
|
|
240
|
-
| `service-skills-set` | Docker service expertise — gives Claude persistent knowledge about your services | SessionStart, PreToolUse, PostToolUse |
|
|
241
|
-
| `tdd-guard` | Enforce Test-Driven Development — blocks implementation until failing tests exist | SessionStart, PreToolUse, UserPromptSubmit |
|
|
76
|
+
Global skills are reusable workflows installed to the user-level Claude environment (not tied to one repo).
|
|
242
77
|
|
|
243
|
-
###
|
|
78
|
+
### documenting
|
|
79
|
+
Maintains Single Source of Truth (SSOT) documentation system with drift detection.
|
|
80
|
+
- **Invocation**: `/document [task]`
|
|
81
|
+
- **Purpose**: Creates, updates, and validates SSOT documentation. Auto-generates INDEX blocks for rapid navigation. A Stop hook fires at session end to detect stale memories based on the `tracks:` frontmatter field.
|
|
244
82
|
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
# Install a specific skill into your current project
|
|
250
|
-
cd my-project
|
|
251
|
-
xtrm install project quality-gates # Unified quality gates (Python + TypeScript)
|
|
252
|
-
xtrm install project service-skills-set # Docker service expertise
|
|
253
|
-
xtrm install project tdd-guard # TDD enforcement
|
|
254
|
-
xtrm install project all # Install every available project skill
|
|
255
|
-
xtrm install project '*' # Same as above; quote to avoid shell expansion
|
|
256
|
-
```
|
|
83
|
+
### delegating
|
|
84
|
+
Proactively delegates tasks to cost-optimized agents before working in main session.
|
|
85
|
+
- **Invocation**: `/delegate [task]` or `/delegating [task]`
|
|
86
|
+
- **Purpose**: Routes simple deterministic tasks (tests, typos, formatting, docs) to GLM/Gemini/Qwen, and complex reasoning tasks to multi-agent orchestration. Interactive 2-step menu helps select the backend. Avoids main session token usage.
|
|
257
87
|
|
|
258
|
-
|
|
88
|
+
### orchestrating-agents
|
|
89
|
+
Orchestrates task handoff and "handshaking" between Gemini and Qwen CLI agents.
|
|
90
|
+
- **Invocation**: `/orchestrate [workflow-type] [task]`
|
|
91
|
+
- **Purpose**: Facilitates multi-model collaboration, adversarial reviews, and deep cross-validation of complex logic. Workflows include collaborative design, adversarial security review, troubleshooting, and single handshakes.
|
|
259
92
|
|
|
260
93
|
---
|
|
261
94
|
|
|
@@ -263,530 +96,69 @@ xtrm install project '*' # Same as above; quote to avoid shell ex
|
|
|
263
96
|
|
|
264
97
|
### 🚀 Quick One-Time Run
|
|
265
98
|
|
|
266
|
-
Run the latest version directly from GitHub without installing:
|
|
267
|
-
|
|
268
99
|
```bash
|
|
269
|
-
npx -y github:Jaggerxtrm/xtrm-tools install
|
|
100
|
+
npx -y github:Jaggerxtrm/xtrm-tools install all
|
|
270
101
|
```
|
|
271
102
|
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
---
|
|
275
|
-
|
|
276
|
-
### 🛠️ Global Installation (Recommended for repeated use)
|
|
277
|
-
|
|
278
|
-
Install globally from GitHub:
|
|
103
|
+
### 🛠️ Global Installation (Recommended)
|
|
279
104
|
|
|
280
|
-
```bash
|
|
281
|
-
npm install -g github:Jaggerxtrm/xtrm-tools
|
|
282
|
-
```
|
|
283
|
-
|
|
284
|
-
Now you can run `xtrm` from anywhere:
|
|
285
|
-
```bash
|
|
286
|
-
xtrm install # Install/update tools
|
|
287
|
-
xtrm status # Check for changes
|
|
288
|
-
xtrm install project tdd-guard # Install project skills
|
|
289
|
-
```
|
|
290
|
-
|
|
291
|
-
**To update later:**
|
|
292
105
|
```bash
|
|
293
106
|
npm install -g github:Jaggerxtrm/xtrm-tools@latest
|
|
294
|
-
```
|
|
295
|
-
|
|
296
|
-
---
|
|
297
|
-
|
|
298
|
-
### 🔧 Local Installation (for development)
|
|
299
107
|
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
npm install # installs root + cli workspace dependencies
|
|
304
|
-
npm run build # compiles CLI TypeScript to cli/dist/
|
|
305
|
-
npm link # registers `xtrm` globally
|
|
108
|
+
xtrm install all # Install to all global targets
|
|
109
|
+
xtrm project init # Setup current project (runs gitnexus analyze + bd init)
|
|
110
|
+
xtrm install project all # Install all project-specific skills
|
|
306
111
|
```
|
|
307
112
|
|
|
308
|
-
Root package is the single entrypoint for dev/publish:
|
|
309
|
-
- `npm install` (root) installs everything, including `cli/`
|
|
310
|
-
- `npm run build` (root) builds the CLI bundle
|
|
311
|
-
- `npm test` (root) runs CLI tests
|
|
312
|
-
- `npm publish` (root) runs `prepublishOnly` build, then publishes
|
|
313
|
-
|
|
314
113
|
---
|
|
315
114
|
|
|
316
115
|
## CLI User Guide
|
|
317
116
|
|
|
318
|
-
### Synopsis
|
|
319
|
-
|
|
320
117
|
```
|
|
321
118
|
xtrm <command> [options]
|
|
322
119
|
```
|
|
323
120
|
|
|
324
|
-
| Command
|
|
325
|
-
|
|
326
|
-
| `install` |
|
|
327
|
-
| `
|
|
328
|
-
| `
|
|
329
|
-
| `
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
### `xtrm install`
|
|
334
|
-
|
|
335
|
-
The main command. Detects your agent environments, calculates what's changed, and applies updates.
|
|
336
|
-
|
|
337
|
-
```bash
|
|
338
|
-
xtrm install # interactive — prompts for targets and confirmation
|
|
339
|
-
xtrm install all # install to all Claude Code targets without target prompt
|
|
340
|
-
xtrm install '*' # same as above; quote * to avoid shell expansion
|
|
341
|
-
xtrm install --dry-run # preview what WOULD change, write nothing
|
|
342
|
-
xtrm install all --dry-run -y # non-interactive preview across all Claude targets
|
|
343
|
-
xtrm install -y # skip confirmation prompts (CI-friendly)
|
|
344
|
-
xtrm install --prune # also remove system items no longer in the repo
|
|
345
|
-
xtrm install --backport # reverse direction: copy drifted local edits → repo
|
|
346
|
-
```
|
|
347
|
-
|
|
348
|
-
**UX Features (v1.6.0+)**:
|
|
349
|
-
- **Listr2 concurrent diff phase**: Parallel environment checks with per-target change counts
|
|
350
|
-
- **cli-table3 plan table**: Formatted table showing Target / + New / ↑ Update / ! Drift / Total
|
|
351
|
-
- **boxen summary card**: Completion summary with green/yellow border based on drift
|
|
352
|
-
- **Themed output**: Semantic colors (success, error, warning, muted, accent) via `theme.ts`
|
|
353
|
-
- **beads+dolt prerequisite flow**: `xtrm install` / `xtrm install all` check workflow backend and can install missing deps
|
|
354
|
-
- **Auto-detection**: Scans Claude Code targets automatically (`~/.claude`, `%APPDATA%/Claude` on Windows) plus the `.agents/skills` cache for skills-only sync
|
|
355
|
-
- **Inline sync**: `status` command offers to apply sync immediately after showing changes
|
|
356
|
-
- **Single confirmation**: See full plan across all targets, confirm once
|
|
357
|
-
- **Safety guards**: Prune mode aborts on read failures; clean errors (no stack traces)
|
|
358
|
-
- **Startup banner**: Professional branding on CLI launch (skip with `--help`/`--version`)
|
|
359
|
-
- **`--json` flag**: Machine-readable output for CI/CD pipelines
|
|
360
|
-
|
|
361
|
-
**What it syncs per target environment:**
|
|
362
|
-
|
|
363
|
-
| Item | Claude Code (full) | `~/.agents/skills` (skills-only) |
|
|
364
|
-
| --------------- | -------------------- | --------------------------------- |
|
|
365
|
-
| `skills/` | ✅ copy/symlink | ✅ direct copy |
|
|
366
|
-
| `hooks/` | ✅ copy/symlink | ❌ skipped |
|
|
367
|
-
| `settings.json` | ✅ safe merge | ❌ skipped |
|
|
368
|
-
| MCP servers | `mcp add` CLI | ❌ skipped |
|
|
369
|
-
|
|
370
|
-
**Diff categories shown before sync:**
|
|
371
|
-
|
|
372
|
-
- `+ missing` — item exists in repo but not in your system (will be added)
|
|
373
|
-
- `↑ outdated` — repo is newer than your system (will be updated)
|
|
374
|
-
- `✗ drifted` — your local copy is newer than the repo (skipped unless `--backport`)
|
|
375
|
-
|
|
376
|
-
**Safe merge behaviour for `settings.json`:**
|
|
377
|
-
Protected keys (your local MCP servers, permissions, auth tokens, model preferences) are **never overwritten**. New keys from the repo are merged in non-destructively.
|
|
378
|
-
|
|
379
|
-
**Sync modes** (saved between runs, prompted on first sync):
|
|
380
|
-
- `copy` — default; plain file copy
|
|
381
|
-
- `symlink` — live symlinks so edits to `skills/` immediately reflect system-wide *(Linux/macOS only; Windows falls back to copy automatically)*
|
|
382
|
-
|
|
383
|
-
---
|
|
384
|
-
|
|
385
|
-
### `xtrm status`
|
|
386
|
-
|
|
387
|
-
Read-only diff view with enhanced feedback — no files written:
|
|
388
|
-
|
|
389
|
-
```bash
|
|
390
|
-
xtrm status # auto-detects all environments
|
|
391
|
-
xtrm status --json # machine-readable output
|
|
392
|
-
```
|
|
393
|
-
|
|
394
|
-
**Output includes (v1.7.0+)**:
|
|
395
|
-
- Auto-detected environments: Claude Code targets and the `~/.agents/skills` cache
|
|
396
|
-
- cli-table3 formatted table with per-target change breakdown
|
|
397
|
-
- Last synced time (relative: "3 hours ago")
|
|
398
|
-
- Item counts from manifest (skills, hooks, config)
|
|
399
|
-
- Per-target health: ✓ Up-to-date / ⚠ Pending changes
|
|
400
|
-
- **Inline sync prompt**: "Apply sync now?" with multiselect target choice (Esc to skip)
|
|
401
|
-
- No second diff pass needed — executes directly using pre-computed changeSets
|
|
402
|
-
|
|
403
|
-
---
|
|
404
|
-
|
|
405
|
-
### `xtrm reset`
|
|
406
|
-
|
|
407
|
-
Clears saved preferences (sync mode, etc.):
|
|
408
|
-
|
|
409
|
-
```bash
|
|
410
|
-
xtrm reset
|
|
411
|
-
```
|
|
412
|
-
|
|
413
|
-
---
|
|
414
|
-
|
|
415
|
-
### Manual Installation (without CLI)
|
|
416
|
-
|
|
417
|
-
1. Clone this repository:
|
|
418
|
-
```bash
|
|
419
|
-
git clone https://github.com/Jaggerxtrm/xtrm-tools.git
|
|
420
|
-
cd xtrm-tools
|
|
421
|
-
```
|
|
422
|
-
|
|
423
|
-
2. Copy skills to Claude Code:
|
|
424
|
-
```bash
|
|
425
|
-
cp -r skills/* ~/.claude/skills/
|
|
426
|
-
```
|
|
427
|
-
|
|
428
|
-
3. Copy hooks:
|
|
429
|
-
```bash
|
|
430
|
-
cp hooks/* ~/.claude/hooks/
|
|
431
|
-
```
|
|
432
|
-
|
|
433
|
-
---
|
|
434
|
-
|
|
435
|
-
## Manual Setup for Gemini/Qwen
|
|
436
|
-
|
|
437
|
-
**ARCHITECTURAL DECISION (v2.0.0):** xtrm-tools no longer provides automated hook translation for Gemini CLI or Qwen CLI. This decision was made because:
|
|
438
|
-
|
|
439
|
-
1. **Fragile ecosystems:** Hook support in Gemini/Qwen is unofficial and undocumented
|
|
440
|
-
2. **Technical debt:** Maintaining translations introduces breaking changes with upstream updates
|
|
441
|
-
3. **Focus:** We prioritize robust, well-tested Claude Code support
|
|
442
|
-
|
|
443
|
-
If you use Gemini CLI or Qwen CLI, you can still use xtrm-tools skills and hooks with manual setup:
|
|
444
|
-
|
|
445
|
-
### For Gemini CLI Users
|
|
446
|
-
|
|
447
|
-
1. **Copy skills:**
|
|
448
|
-
```bash
|
|
449
|
-
cp -r skills/* ~/.gemini/skills/
|
|
450
|
-
```
|
|
451
|
-
|
|
452
|
-
2. **Configure hooks manually:** Gemini uses `BeforeAgent`, `BeforeTool`, `SessionStart` events. Map Claude hooks as follows:
|
|
453
|
-
- `UserPromptSubmit` → `BeforeAgent`
|
|
454
|
-
- `PreToolUse` → `BeforeTool` (translate tool names: `Read`→`read_file`, `Write`→`write_file`, etc.)
|
|
455
|
-
- `SessionStart` → `SessionStart`
|
|
456
|
-
|
|
457
|
-
3. **Reference:** See [Gemini CLI documentation](https://github.com/google-gemini/gemini-cli) for hook format.
|
|
458
|
-
|
|
459
|
-
### For Qwen CLI Users
|
|
460
|
-
|
|
461
|
-
1. **Copy skills:**
|
|
462
|
-
```bash
|
|
463
|
-
cp -r skills/* ~/.qwen/skills/
|
|
464
|
-
```
|
|
465
|
-
|
|
466
|
-
2. **Configure hooks manually:** Qwen uses similar event names to Claude. Copy hook scripts from `hooks/` and wire them in `~/.qwen/settings.json`.
|
|
467
|
-
|
|
468
|
-
3. **Reference:** See [Qwen CLI documentation](https://github.com/QwenLM/qwen-cli) for configuration format.
|
|
469
|
-
|
|
470
|
-
### Limitations
|
|
471
|
-
|
|
472
|
-
- ❌ No automated sync/updates (must manually copy changes)
|
|
473
|
-
- ❌ No MCP server auto-installation
|
|
474
|
-
- ❌ No project skills support (Claude Code only)
|
|
475
|
-
- ❌ No hook translation (must configure manually)
|
|
121
|
+
| Command | Description |
|
|
122
|
+
|---|---|
|
|
123
|
+
| `install all` | Non-interactive global install to all detected targets (installs `gitnexus` globally) |
|
|
124
|
+
| `install basic` | Interactive global installation |
|
|
125
|
+
| `install project <name>` | Install specific project skills (e.g., `tdd-guard`, `service-skills-set`) |
|
|
126
|
+
| `project init` | Onboarding: runs `gitnexus analyze`, registers MCP, and runs `bd init` |
|
|
127
|
+
| `status` | Read-only diff view showing what would change (with inline sync prompt) |
|
|
128
|
+
| `clean` | Removes orphaned hooks, stale wrappers, and dead skills from your system |
|
|
129
|
+
| `reset` | Clear saved CLI preferences |
|
|
476
130
|
|
|
477
131
|
---
|
|
478
132
|
|
|
479
133
|
## Configuration
|
|
480
134
|
|
|
481
|
-
### MCP Servers
|
|
135
|
+
### MCP Servers
|
|
482
136
|
|
|
483
|
-
|
|
137
|
+
Unified CLI sync configures core servers securely.
|
|
484
138
|
|
|
485
|
-
**Core Servers
|
|
486
|
-
- **serena**: Code analysis (requires `uvx
|
|
487
|
-
- **context7**: Documentation lookup (requires
|
|
488
|
-
- **github-grep**: Code search
|
|
139
|
+
**Core Servers**:
|
|
140
|
+
- **serena**: Code analysis (requires `uvx`)
|
|
141
|
+
- **context7**: Documentation lookup (requires `CONTEXT7_API_KEY`)
|
|
142
|
+
- **github-grep**: Code search
|
|
489
143
|
- **deepwiki**: Technical documentation
|
|
144
|
+
- **gitnexus**: Knowledge graph code intelligence (registered during `xtrm project init`)
|
|
490
145
|
|
|
491
|
-
|
|
492
|
-
- **unitAI**: Multi-agent workflow orchestration (requires `npx`)
|
|
493
|
-
- **omni-search-engine**: Local search engine (requires running service on port 8765)
|
|
494
|
-
- **gitnexus**: Knowledge graph code intelligence (requires `npm install -g gitnexus` + `npx gitnexus analyze` per project)
|
|
495
|
-
|
|
496
|
-
**Configuration Files**:
|
|
497
|
-
- Core: [`config/mcp_servers.json`](config/mcp_servers.json)
|
|
498
|
-
- Optional: [`config/mcp_servers_optional.json`](config/mcp_servers_optional.json)
|
|
499
|
-
- Environment: [`~/.config/xtrm-tools/.env`](~/.config/xtrm-tools/.env) (auto-created)
|
|
500
|
-
|
|
501
|
-
**Environment Variables**:
|
|
502
|
-
- **Location:** `~/.config/xtrm-tools/.env` (created automatically on first sync)
|
|
503
|
-
- **Required:** `CONTEXT7_API_KEY` for context7 server
|
|
504
|
-
- **Validation:** Interactive prompts for missing API keys during sync
|
|
505
|
-
- **Persistence:** Values preserved across syncs; never overwritten
|
|
506
|
-
- Edit `~/.config/xtrm-tools/.env` to add your API keys manually
|
|
507
|
-
|
|
508
|
-
**Unified MCP CLI Sync**:
|
|
509
|
-
- Uses official `claude mcp add` / `claude mcp list` commands
|
|
510
|
-
- **Idempotent:** Re-running is always safe — skips already-installed servers
|
|
511
|
-
- **Deduplication:** Prevents same server from syncing N times when multiple dirs selected
|
|
512
|
-
- **Prerequisite auto-install:** Runs `npm install -g gitnexus` automatically when selected
|
|
513
|
-
- **Post-install guidance:** Shows required next steps (e.g., `npx gitnexus analyze`)
|
|
514
|
-
- **Timeout protection:** 10s timeout on CLI calls to prevent hangs
|
|
515
|
-
- **Clean errors:** User-friendly messages (no stack traces)
|
|
516
|
-
|
|
517
|
-
**Scopes**:
|
|
518
|
-
- Global installs (`xtrm install`, `xtrm install all`, `xtrm install basic`) sync MCP into Claude global config
|
|
519
|
-
- Project installs (`xtrm install project <name|all>`) sync core MCP at project scope (`-s project`)
|
|
520
|
-
|
|
521
|
-
**Supported Agent**:
|
|
522
|
-
- Claude Code
|
|
523
|
-
|
|
524
|
-
**Deprecated**:
|
|
525
|
-
- JSON file MCP sync (superseded by official CLI method)
|
|
526
|
-
- Repo `.env` files — use centralized `~/.config/xtrm-tools/.env`
|
|
527
|
-
|
|
528
|
-
**Documentation**: See [docs/mcp-servers-config.md](docs/mcp-servers-config.md) for complete setup guide.
|
|
529
|
-
|
|
530
|
-
### Skill Suggestions
|
|
531
|
-
|
|
532
|
-
Enable/disable proactive skill suggestions:
|
|
533
|
-
|
|
534
|
-
```json
|
|
535
|
-
// ~/.claude/settings.json
|
|
536
|
-
{
|
|
537
|
-
"skillSuggestions": {
|
|
538
|
-
"enabled": true // Set to false to disable
|
|
539
|
-
}
|
|
540
|
-
}
|
|
541
|
-
```
|
|
542
|
-
|
|
543
|
-
### Hook Timeouts
|
|
544
|
-
|
|
545
|
-
Adjust hook execution timeouts in `settings.json`:
|
|
546
|
-
|
|
547
|
-
```json
|
|
548
|
-
{
|
|
549
|
-
"hooks": {
|
|
550
|
-
"UserPromptSubmit": [{
|
|
551
|
-
"hooks": [{
|
|
552
|
-
"timeout": 5000 // Timeout in milliseconds (5000ms = 5 seconds)
|
|
553
|
-
}]
|
|
554
|
-
}]
|
|
555
|
-
}
|
|
556
|
-
}
|
|
557
|
-
```
|
|
558
|
-
|
|
559
|
-
### Service Skills Set (Trinity) — v1.5.0
|
|
560
|
-
|
|
561
|
-
Project-specific operational knowledge system for Docker service projects. Gives Claude persistent, service-specific expertise without re-explaining architecture every session.
|
|
562
|
-
|
|
563
|
-
**Three Workflow Skills (Trinity)**:
|
|
564
|
-
|
|
565
|
-
| Skill | Role | Invocation |
|
|
566
|
-
|---|---|---|
|
|
567
|
-
| `creating-service-skills` | Builds new skill packages via 3-phase workflow | `/creating-service-skills` |
|
|
568
|
-
| `using-service-skills` | Discovers and activates expert personas | Auto (SessionStart hook) |
|
|
569
|
-
| `updating-service-skills` | Detects drift when code changes | Auto (PostToolUse hook) |
|
|
570
|
-
|
|
571
|
-
**Five Hooks**:
|
|
572
|
-
|
|
573
|
-
| Hook | Type | Trigger | Effect |
|
|
574
|
-
|---|---|---|---|
|
|
575
|
-
| `SessionStart` | Claude Code | Session opens | Injects ~150-token service catalog |
|
|
576
|
-
| `PreToolUse` | Claude Code | Read/Write/Edit/Grep/Glob/Bash | Checks territory; injects skill load reminder |
|
|
577
|
-
| `PostToolUse` | Claude Code | Write/Edit | Detects drift; notifies to sync docs |
|
|
578
|
-
| `pre-commit` | Git | `git commit` | Warns if source changed without SSOT update (non-blocking) |
|
|
579
|
-
| `pre-push` | Git | `git push` | Warns if service skills are stale (non-blocking) |
|
|
580
|
-
|
|
581
|
-
**Generated Skill Package Structure**:
|
|
582
|
-
|
|
583
|
-
```
|
|
584
|
-
.claude/skills/<service-name>/
|
|
585
|
-
├── SKILL.md — architecture, failure modes, common operations
|
|
586
|
-
├── scripts/
|
|
587
|
-
│ ├── health_probe.py — container status + table freshness
|
|
588
|
-
│ ├── log_hunter.py — service-specific log analysis
|
|
589
|
-
│ ├── data_explorer.py — read-only DB inspection
|
|
590
|
-
│ └── <specialist>.py — service-type-specific inspector
|
|
591
|
-
└── references/
|
|
592
|
-
├── deep_dive.md — Phase 2 research notes
|
|
593
|
-
└── architecture_ssot.md — link to project SSOT
|
|
594
|
-
```
|
|
595
|
-
|
|
596
|
-
**Installation** (run from inside target project):
|
|
597
|
-
|
|
598
|
-
```bash
|
|
599
|
-
cd ~/projects/my-project
|
|
600
|
-
python3 /path/to/xtrm-tools/project-skills/service-skills-set/install-service-skills.py
|
|
601
|
-
```
|
|
146
|
+
Configured via `~/.config/xtrm-tools/.env`. Run `xtrm install basic` to sync interactively.
|
|
602
147
|
|
|
603
|
-
|
|
604
|
-
- Installs Trinity skills into `.claude/skills/`
|
|
605
|
-
- Wires `settings.json` hooks (SessionStart, PreToolUse, PostToolUse)
|
|
606
|
-
- Activates git hooks (`pre-commit`, `pre-push`)
|
|
607
|
-
|
|
608
|
-
**Creating a Service Skill** (`/creating-service-skills`):
|
|
609
|
-
|
|
610
|
-
**Phase 1 — Automated Skeleton**:
|
|
611
|
-
```bash
|
|
612
|
-
python3 scaffolder.py create <service-id> <territory-path> "<description>"
|
|
613
|
-
```
|
|
614
|
-
- Reads `docker-compose*.yml`, `Dockerfile`, dependency files
|
|
615
|
-
- Produces `SKILL.md` with `[PENDING RESEARCH]` markers
|
|
616
|
-
- Generates script stubs in `scripts/`
|
|
617
|
-
- Auto-detects official docs from image tags and package files
|
|
618
|
-
- Creates entry in `.claude/skills/service-registry.json`
|
|
619
|
-
|
|
620
|
-
**Phase 2 — Agentic Deep Dive**:
|
|
621
|
-
- Uses Serena LSP tools (not raw file reads) for 75-80% token savings
|
|
622
|
-
- Fills every `[PENDING RESEARCH]` marker with actual codebase knowledge
|
|
623
|
-
- Sources troubleshooting tables from real failure modes
|
|
624
|
-
- All scripts support `--json` output
|
|
625
|
-
|
|
626
|
-
**Phase 3 — Hook Registration**:
|
|
627
|
-
- Verifies `PreToolUse` hook in `.claude/settings.json`
|
|
628
|
-
- Confirms service territory globs in registry
|
|
629
|
-
- Informs user: skill now auto-activates on territory file access and service-name commands
|
|
630
|
-
|
|
631
|
-
**Auto-activation**:
|
|
632
|
-
Once registered, skills activate automatically when Claude:
|
|
633
|
-
- Operates on files matching territory globs (e.g., `src/auth/**/*.py`)
|
|
634
|
-
- Runs Bash commands mentioning service/container name
|
|
635
|
-
|
|
636
|
-
**Documentation**: See [project-skills/service-skills-set/service-skills-readme.md](project-skills/service-skills-set/service-skills-readme.md) for complete guide.
|
|
637
|
-
|
|
638
|
-
## Documentation
|
|
639
|
-
|
|
640
|
-
### Core Documentation
|
|
641
|
-
- [README.md](README.md) - Main documentation and quick start
|
|
642
|
-
- [CHANGELOG.md](CHANGELOG.md) - Version history and breaking changes
|
|
643
|
-
- [ROADMAP.md](ROADMAP.md) - Future enhancements and planned features
|
|
644
|
-
- [AGENTS.md](AGENTS.md) - GitNexus + bd (beads) quick reference
|
|
645
|
-
- [CLAUDE.md](CLAUDE.md) - Claude Code development guide
|
|
646
|
-
- [hooks.md](hooks.md) - Global hooks module reference
|
|
647
|
-
- [skills.md](skills.md) - Global skills catalog
|
|
648
|
-
- [project-skills.md](project-skills.md) - Project-local skills reference
|
|
649
|
-
- [mcp.md](mcp.md) - MCP servers configuration
|
|
650
|
-
- [testing.md](testing.md) - Production live testing checklist
|
|
651
|
-
|
|
652
|
-
### Skill Documentation
|
|
653
|
-
- [skills/prompt-improving/README.md](skills/prompt-improving/README.md) - Prompt improvement skill
|
|
654
|
-
- [skills/delegating/SKILL.md](skills/delegating/SKILL.md) - Delegation workflow guide
|
|
655
|
-
- [skills/obsidian-cli/SKILL.md](skills/obsidian-cli/SKILL.md) - Obsidian CLI reference
|
|
656
|
-
- [hooks/README.md](hooks/README.md) - Complete hooks reference
|
|
657
|
-
- [project-skills/service-skills-set/service-skills-readme.md](project-skills/service-skills-set/service-skills-readme.md) - Service Skills Set (Trinity) guide
|
|
658
|
-
|
|
659
|
-
### MCP Configuration
|
|
660
|
-
- [docs/mcp-servers-config.md](docs/mcp-servers-config.md) - MCP servers setup guide
|
|
661
|
-
- [config/mcp_servers.json](config/mcp_servers.json) - Core MCP servers (canonical source)
|
|
662
|
-
- [config/mcp_servers_optional.json](config/mcp_servers_optional.json) - Optional MCP servers
|
|
663
|
-
|
|
664
|
-
### Implementation Plans
|
|
665
|
-
- [docs/plans/](docs/plans/) - Design documents and implementation plans
|
|
666
|
-
- [docs/plans/complete/](docs/plans/complete/) - Completed implementation plans
|
|
148
|
+
---
|
|
667
149
|
|
|
668
150
|
## Version History
|
|
669
151
|
|
|
670
|
-
| Version | Date
|
|
671
|
-
|
|
672
|
-
| 2.1.
|
|
673
|
-
| 2.1.
|
|
674
|
-
| 2.1.
|
|
675
|
-
| 2.1.
|
|
676
|
-
| 1.
|
|
677
|
-
| 1.6.0 | 2026-02-24 | Documenting skill hardening (drift detection, INDEX blocks) |
|
|
678
|
-
| 1.5.0 | 2026-02-23 | Service Skills Set (Trinity), git hooks, auto-activation |
|
|
679
|
-
| 1.4.0 | 2026-02-23 | Delegating skill hardening, skill-suggestion hook enhancements |
|
|
680
|
-
| 1.3.0 | 2026-02-22 | CLI UX improvements (spinners, safety, feedback) |
|
|
681
|
-
| 1.2.0 | 2026-02-21 | CLI rewritten in TypeScript, Commander.js sub-cmds |
|
|
682
|
-
| 1.1.1 | 2026-02-03 | Dynamic path resolution in Sync logic |
|
|
683
|
-
| 1.1.0 | 2026-02-03 | Vault Sync, Orchestrating-agents loops |
|
|
684
|
-
| 5.1.0 | 2026-01-30 | Renamed `p` to `prompt-improving` |
|
|
685
|
-
| 5.0.0 | 2026-01-30 | Major refactoring, 90% token reduction |
|
|
686
|
-
| 4.2.0 | Pre-2026 | Feature-rich baseline (155KB) |
|
|
687
|
-
|
|
688
|
-
See [CHANGELOG.md](CHANGELOG.md) for complete version history.
|
|
689
|
-
|
|
690
|
-
## Repository Structure
|
|
691
|
-
|
|
692
|
-
```
|
|
693
|
-
xtrm-tools/
|
|
694
|
-
├── README.md # This file
|
|
695
|
-
├── CHANGELOG.md # Version history
|
|
696
|
-
├── ROADMAP.md # Future plans
|
|
697
|
-
├── AGENTS.md # GitNexus quick reference
|
|
698
|
-
├── CLAUDE.md # Claude Code development guide
|
|
699
|
-
│
|
|
700
|
-
├── cli/ # Config Manager CLI (TypeScript)
|
|
701
|
-
│ ├── src/
|
|
702
|
-
│ │ ├── index.ts # Entry point (Commander program)
|
|
703
|
-
│ │ ├── commands/ # install.ts, install-project.ts, status.ts, reset.ts, help.ts
|
|
704
|
-
│ │ ├── adapters/ # base, claude, gemini, qwen, registry
|
|
705
|
-
│ │ ├── core/ # context, diff, sync-executor, manifest, rollback
|
|
706
|
-
│ │ ├── utils/ # hash, atomic-config, config-adapter, env-manager, theme…
|
|
707
|
-
│ │ └── types/ # Zod schemas (config.ts) + shared interfaces (models.ts)
|
|
708
|
-
│ ├── dist/ # Compiled output (generated by `npm run build`)
|
|
709
|
-
│ ├── tsconfig.json
|
|
710
|
-
│ ├── tsup.config.ts
|
|
711
|
-
│ └── package.json
|
|
712
|
-
│
|
|
713
|
-
├── skills/ # Core agent skills
|
|
714
|
-
│ ├── prompt-improving/ # Prompt improvement skill
|
|
715
|
-
│ ├── delegating/ # Task delegation skill (CCS + unitAI)
|
|
716
|
-
│ ├── orchestrating-agents/ # Multi-agent collaboration skill
|
|
717
|
-
│ ├── using-serena-lsp/ # Serena LSP workflow
|
|
718
|
-
│ ├── documenting/ # Serena SSOT system (with drift detection)
|
|
719
|
-
│ ├── obsidian-cli/ # Obsidian CLI skill
|
|
720
|
-
│ ├── gitnexus/ # GitNexus knowledge graph skills (4 skills)
|
|
721
|
-
│ │ ├── exploring/ # Architecture understanding
|
|
722
|
-
│ │ ├── debugging/ # Bug tracing
|
|
723
|
-
│ │ ├── impact-analysis/ # Blast radius analysis
|
|
724
|
-
│ │ └── refactoring/ # Surgical refactors
|
|
725
|
-
│ ├── clean-code/ # Clean code principles
|
|
726
|
-
│ ├── docker-expert/ # Docker containerization expert
|
|
727
|
-
│ ├── python-testing/ # Python testing strategies
|
|
728
|
-
│ ├── python-type-safety/ # Python type safety
|
|
729
|
-
│ ├── senior-backend/ # Backend development expert
|
|
730
|
-
│ ├── senior-data-scientist/ # Data science expert
|
|
731
|
-
│ ├── senior-devops/ # DevOps expert
|
|
732
|
-
│ ├── senior-security/ # Security engineering expert
|
|
733
|
-
│ ├── skill-creator/ # Skill creation guide
|
|
734
|
-
│ └── find-skills/ # Skill discovery helper
|
|
735
|
-
│
|
|
736
|
-
├── hooks/ # Claude Code hooks
|
|
737
|
-
│ ├── README.md # Hooks documentation
|
|
738
|
-
│ ├── skill-suggestion.py # Skill auto-suggestion
|
|
739
|
-
│ ├── skill-discovery.py # SessionStart skill catalog injection
|
|
740
|
-
│ ├── serena-workflow-reminder.py # Serena reminder
|
|
741
|
-
│ ├── type-safety-enforcement.py # Type safety
|
|
742
|
-
│ ├── gitnexus/
|
|
743
|
-
│ │ └── gitnexus-hook.cjs # PreToolUse knowledge graph enrichment
|
|
744
|
-
│ └── main-guard.mjs # Protected-branch edit guard
|
|
745
|
-
│
|
|
746
|
-
├── config/ # Canonical configuration
|
|
747
|
-
│ ├── mcp_servers.json # Core MCP servers
|
|
748
|
-
│ ├── mcp_servers_optional.json # Optional MCP servers (gitnexus, unitAI, omni-search)
|
|
749
|
-
│ └── settings.json # Base settings template
|
|
750
|
-
│
|
|
751
|
-
├── project-skills/ # Project-specific service skills
|
|
752
|
-
│ └── service-skills-set/ # Trinity system for Docker service projects
|
|
753
|
-
│ ├── install-service-skills.py # Installer script
|
|
754
|
-
│ ├── service-skills-readme.md # Complete guide
|
|
755
|
-
│ └── .claude/
|
|
756
|
-
│ ├── settings.json # Settings template with hooks
|
|
757
|
-
│ ├── creating-service-skills/
|
|
758
|
-
│ ├── using-service-skills/
|
|
759
|
-
│ ├── updating-service-skills/
|
|
760
|
-
│ ├── scoping-service-skills/
|
|
761
|
-
│ └── git-hooks/
|
|
762
|
-
│
|
|
763
|
-
├── docs/ # Documentation
|
|
764
|
-
│ ├── mcp-servers-config.md # MCP setup guide
|
|
765
|
-
│ ├── todo.md # TODO list
|
|
766
|
-
│ └── plans/ # Implementation plans
|
|
767
|
-
│ ├── complete/ # Completed plans
|
|
768
|
-
│ └── *.md # Active design documents
|
|
769
|
-
│
|
|
770
|
-
└── .github/
|
|
771
|
-
└── workflows/
|
|
772
|
-
└── ci.yml # CI/CD pipeline (lint, test, build)
|
|
773
|
-
```
|
|
774
|
-
|
|
775
|
-
## Contributing
|
|
776
|
-
|
|
777
|
-
Contributions are welcome. Please:
|
|
152
|
+
| Version | Date | Highlights |
|
|
153
|
+
|---|---|---|
|
|
154
|
+
| 2.1.20 | 2026-03-16 | `xtrm clean` command, compact hook messages, `pruneStaleWrappers` fixes |
|
|
155
|
+
| 2.1.18 | 2026-03-16 | `PreCompact` / `SessionStart` hooks to preserve `in_progress` beads state |
|
|
156
|
+
| 2.1.16 | 2026-03-15 | Removed deprecated skill-suggestion, gitnexus-impact-reminder hooks |
|
|
157
|
+
| 2.1.14 | 2026-03-15 | Rewrote gitnexus-hook as PostToolUse with Serena; added `using-xtrm` skill |
|
|
158
|
+
| 2.1.9 | 2026-03-15 | `main-guard` enforced PR-only workflow, `--squash` requirement, npm publish |
|
|
778
159
|
|
|
779
|
-
|
|
780
|
-
2. Update documentation for any changes
|
|
781
|
-
3. Test skills and hooks before submitting
|
|
782
|
-
4. Update CHANGELOG.md for all changes
|
|
160
|
+
See [CHANGELOG.md](CHANGELOG.md) for full history.
|
|
783
161
|
|
|
784
162
|
## License
|
|
785
163
|
|
|
786
164
|
MIT License - See LICENSE file for details.
|
|
787
|
-
|
|
788
|
-
## Credits
|
|
789
|
-
|
|
790
|
-
- Developed by Dawid Jaggers
|
|
791
|
-
- Serena skills and hooks courtesy of Serena MCP project
|
|
792
|
-
- Built for Claude Code by Anthropic
|