@erclx/aitk
Advanced tools
| { | ||
| "name": "aitk", | ||
| "description": "Automated governance, versioning, and discovery tools for Claude Code.", | ||
| "version": "3.32.0", | ||
| "version": "3.33.0", | ||
| "author": { | ||
@@ -6,0 +6,0 @@ "name": "Eric Le", |
@@ -47,2 +47,6 @@ --- | ||
| Test the shape of whatever `<plan>` resolved to before reading it as one. A file resolving under either tier can still be the wrong document, a task file most often, so the test runs after both rather than guarding the supplied tier alone. | ||
| Check for a `**Files to touch:**` or `## Files to touch` marker per `${CLAUDE_SKILL_DIR}/../../standards/plan.md`, the one section every plan carries structurally and a task never does, where `## Outcomes` and `## Findings` are the task's own. If neither form is present, stop: `❌ <path> carries no plan sections. A plan lives at .claude/plans/feature-<slug>.md; a task lives at .claude/tasks/. Point autoship at the plan and re-run.` | ||
| Read `<plan>` at the main worktree root. This file is the scope for this run. | ||
@@ -159,13 +163,14 @@ | ||
| | Stop point | Recovery | | ||
| | ---------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | | ||
| | No plan (derived) | Run `/claude-feature` to create one | | ||
| | No plan (caller-supplied) | Check the path or slug passed to autoship, then re-run | | ||
| | No diff baseline | Fetch origin so a merge base resolves against `main`, then re-run autoship | | ||
| | Empty changed-file list | Re-run once the plan produces tracked output. Ship gitignored output outside the chain, never by tracking it. | | ||
| | Branch collision on worktree entry | `claude-worktree` Step 5 found `<slug>` already as a local branch. Resolve manually (rename or delete the stale branch), then re-run autoship. | | ||
| | Verify fails | Read logs, fix manually, run `/git-ship` | | ||
| | UI checklist | Verify visually, run `/git-ship` | | ||
| | Inherited review findings | Fix findings, run `/git-ship` | | ||
| | Self-introduced finding survived | Read the receipt for what the one repair pass left open, fix it, run `/git-ship` | | ||
| | git-ship fails | Inspect hook or remote error, run again | | ||
| | Stop point | Recovery | | ||
| | ----------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | | ||
| | No plan (derived) | Run `/claude-feature` to create one | | ||
| | No plan (caller-supplied) | Check the path or slug passed to autoship, then re-run | | ||
| | Resolved file carries no plan shape | Point autoship at a real plan under `.claude/plans/feature-<slug>.md`, not a task file, then re-run | | ||
| | No diff baseline | Fetch origin so a merge base resolves against `main`, then re-run autoship | | ||
| | Empty changed-file list | Re-run once the plan produces tracked output. Ship gitignored output outside the chain, never by tracking it. | | ||
| | Branch collision on worktree entry | `claude-worktree` Step 5 found `<slug>` already as a local branch. Resolve manually (rename or delete the stale branch), then re-run autoship. | | ||
| | Verify fails | Read logs, fix manually, run `/git-ship` | | ||
| | UI checklist | Verify visually, run `/git-ship` | | ||
| | Inherited review findings | Fix findings, run `/git-ship` | | ||
| | Self-introduced finding survived | Read the receipt for what the one repair pass left open, fix it, run `/git-ship` | | ||
| | git-ship fails | Inspect hook or remote error, run again | |
@@ -14,2 +14,8 @@ --- | ||
| ## What fires this | ||
| Being asked is one route. The other is a `PreCompact` hook registered against the `manual` matcher, which a project may install and which blocks the first `/compact` of a session with a message naming this skill. The block fires once, so the next `/compact` proceeds whether or not a map was written, and an automatic compaction is never blocked. A project that registered no such hook reaches this skill by being asked alone. | ||
| Decline where the session holds no reasoning a reader could not get faster from git. Say so in one line and write nothing. The standard already names a `## State` filled from the tree as non-conforming, and the file that carries three such sections is worse than an absent one, because a reader who finds a map trusts it. Declining is a result the caller can act on, where a padded map is a result that misleads. | ||
| ## Guards | ||
@@ -58,2 +64,9 @@ | ||
| A decline reports itself rather than falling silent, so a caller can tell it from a run that failed: | ||
| ```plaintext | ||
| ✅ No session map. <what the session holds that git does not, and why it is nothing> | ||
| <what the drift verb named, or the boundary it refused at> | ||
| ``` | ||
| Emit the path from the project root. The `## Output` section of the project's instruction file sets the form it takes. |
+1
-1
| { | ||
| "name": "@erclx/aitk", | ||
| "type": "module", | ||
| "version": "3.32.0", | ||
| "version": "3.33.0", | ||
| "description": "Infrastructure and quality tooling for developer workflows", | ||
@@ -6,0 +6,0 @@ "license": "MIT", |
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
2853553
0.07%