@nolrm/contextkit 0.12.17 → 0.12.19
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 +1 -0
- package/bin/contextkit.js +3 -0
- package/lib/commands/install.js +4 -53
- package/lib/commands/update.js +4 -0
- package/lib/integrations/claude-integration.js +5 -0
- package/lib/utils/notifier.js +17 -0
- package/package.json +3 -2
package/README.md
CHANGED
|
@@ -318,6 +318,7 @@ ck vscode # alias for copilot
|
|
|
318
318
|
# Analysis & Updates
|
|
319
319
|
/analyze # customize standards to your project (slash command in your AI tool)
|
|
320
320
|
ck update # pull latest commands/hooks — preserves your analyzed standards
|
|
321
|
+
# updates are also flagged automatically after each ck command (24h cache)
|
|
321
322
|
ck status # check install & integrations
|
|
322
323
|
|
|
323
324
|
# Validation & Compliance
|
package/bin/contextkit.js
CHANGED
|
@@ -12,6 +12,9 @@ const publish = require('../lib/commands/publish');
|
|
|
12
12
|
const pull = require('../lib/commands/pull');
|
|
13
13
|
const dashboard = require('../lib/commands/dashboard');
|
|
14
14
|
const packageJson = require('../package.json');
|
|
15
|
+
const { checkForUpdates } = require('../lib/utils/notifier');
|
|
16
|
+
|
|
17
|
+
checkForUpdates();
|
|
15
18
|
|
|
16
19
|
// Set up the CLI
|
|
17
20
|
program
|
package/lib/commands/install.js
CHANGED
|
@@ -734,6 +734,10 @@ Any design decisions, trade-offs, or open questions to resolve before coding.
|
|
|
734
734
|
`${this.repoUrl}/commands/squad-reset.md`,
|
|
735
735
|
'.contextkit/commands/squad-reset.md'
|
|
736
736
|
);
|
|
737
|
+
await this.downloadManager.downloadFile(
|
|
738
|
+
`${this.repoUrl}/commands/health-check.md`,
|
|
739
|
+
'.contextkit/commands/health-check.md'
|
|
740
|
+
);
|
|
737
741
|
|
|
738
742
|
// Download hooks (pre-push and commit-msg only, no pre-commit)
|
|
739
743
|
await this.downloadManager.downloadFile(
|
|
@@ -792,7 +796,6 @@ Any design decisions, trade-offs, or open questions to resolve before coding.
|
|
|
792
796
|
await this.createCorrectionsLog();
|
|
793
797
|
await this.createMetaInstructions();
|
|
794
798
|
await this.createPolicyFile();
|
|
795
|
-
await this.createHealthCheckCommand();
|
|
796
799
|
|
|
797
800
|
// Install CLI helpers
|
|
798
801
|
await this.installCLIHelpers();
|
|
@@ -1592,58 +1595,6 @@ enforcement:
|
|
|
1592
1595
|
console.log(chalk.green('✅ Policy file created'));
|
|
1593
1596
|
}
|
|
1594
1597
|
|
|
1595
|
-
async createHealthCheckCommand() {
|
|
1596
|
-
const healthCheckContent = `# ContextKit Health Check
|
|
1597
|
-
|
|
1598
|
-
Check this project's ContextKit setup and report status.
|
|
1599
|
-
|
|
1600
|
-
## Steps
|
|
1601
|
-
|
|
1602
|
-
1. Check if \`.contextkit/\` directory exists. If not → STOP and tell user: "Run \`ck install\` to set up ContextKit."
|
|
1603
|
-
|
|
1604
|
-
2. Read \`.contextkit/config.yml\` and check the \`last_analyzed\` field.
|
|
1605
|
-
|
|
1606
|
-
3. Check each standards file for skeleton markers. Read these files and check if they contain \`<!-- Content will be generated by running: /analyze -->\`:
|
|
1607
|
-
- \`.contextkit/standards/code-style.md\`
|
|
1608
|
-
- \`.contextkit/standards/testing.md\`
|
|
1609
|
-
- \`.contextkit/standards/architecture.md\`
|
|
1610
|
-
- \`.contextkit/standards/ai-guidelines.md\`
|
|
1611
|
-
- \`.contextkit/standards/workflows.md\`
|
|
1612
|
-
- \`.contextkit/standards/glossary.md\`
|
|
1613
|
-
|
|
1614
|
-
4. Check product files for placeholder content (e.g., \`[ELEVATOR_PITCH_FROM_MISSION_MD]\`):
|
|
1615
|
-
- \`.contextkit/product/mission-lite.md\`
|
|
1616
|
-
- \`.contextkit/product/decisions.md\`
|
|
1617
|
-
- \`.contextkit/product/roadmap.md\`
|
|
1618
|
-
|
|
1619
|
-
5. Check which platform integrations exist:
|
|
1620
|
-
- \`CLAUDE.md\` → Claude Code
|
|
1621
|
-
- \`.cursor/rules/\` → Cursor
|
|
1622
|
-
- \`AGENTS.md\` → Codex
|
|
1623
|
-
- \`GEMINI.md\` → Gemini
|
|
1624
|
-
- \`CONVENTIONS.md\` → Aider
|
|
1625
|
-
- \`.windsurfrules\` → Windsurf
|
|
1626
|
-
- \`.github/copilot-instructions.md\` → Copilot
|
|
1627
|
-
|
|
1628
|
-
6. Report findings as a status summary table and list recommended next steps.
|
|
1629
|
-
|
|
1630
|
-
## Output Format
|
|
1631
|
-
|
|
1632
|
-
| Area | Status | Action |
|
|
1633
|
-
|------|--------|--------|
|
|
1634
|
-
| Installation | OK/Missing | \`ck install\` |
|
|
1635
|
-
| Standards | Populated/Skeleton | \`ck analyze\` or \`/analyze\` |
|
|
1636
|
-
| Product context | Populated/Placeholder | Edit \`.contextkit/product/\` files |
|
|
1637
|
-
| Integrations | List active | \`ck <platform>\` to add more |
|
|
1638
|
-
|
|
1639
|
-
## Token Note
|
|
1640
|
-
|
|
1641
|
-
If standards are still skeletons, warn that @imports in CLAUDE.md are loading empty files — wasting context tokens. Run \`/analyze\` to populate them.
|
|
1642
|
-
`;
|
|
1643
|
-
|
|
1644
|
-
await fs.writeFile('.contextkit/commands/health-check.md', healthCheckContent);
|
|
1645
|
-
}
|
|
1646
|
-
|
|
1647
1598
|
showSuccessMessage(hookChoices, platform = null, projectType = '', packageManager = '') {
|
|
1648
1599
|
console.log('');
|
|
1649
1600
|
console.log(chalk.green('🎉 ContextKit v1.0.0 successfully installed!'));
|
package/lib/commands/update.js
CHANGED
|
@@ -291,6 +291,10 @@ class UpdateCommand {
|
|
|
291
291
|
`${this.repoUrl}/commands/squad-reset.md`,
|
|
292
292
|
'.contextkit/commands/squad-reset.md'
|
|
293
293
|
);
|
|
294
|
+
await this.downloadManager.downloadFile(
|
|
295
|
+
`${this.repoUrl}/commands/health-check.md`,
|
|
296
|
+
'.contextkit/commands/health-check.md'
|
|
297
|
+
);
|
|
294
298
|
|
|
295
299
|
// Download hooks (pre-push and commit-msg only, no pre-commit)
|
|
296
300
|
await this.downloadManager.downloadFile(
|
|
@@ -82,11 +82,16 @@ The following standards are auto-loaded into context via @imports:
|
|
|
82
82
|
}
|
|
83
83
|
|
|
84
84
|
async generateFiles() {
|
|
85
|
+
const { version } = require('../../package.json');
|
|
86
|
+
|
|
85
87
|
// Bridge file: CLAUDE.md (auto-loaded every session)
|
|
86
88
|
const bridgeContent = `# Project Standards (ContextKit)
|
|
87
89
|
|
|
88
90
|
This project uses [ContextKit](https://github.com/nolrm/contextkit) for AI development standards.
|
|
89
91
|
|
|
92
|
+
## ContextKit
|
|
93
|
+
Version: ${version}
|
|
94
|
+
|
|
90
95
|
${this.getStandardsBlock()}
|
|
91
96
|
|
|
92
97
|
## Corrections Log
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
const updateNotifier = require('update-notifier');
|
|
2
|
+
const pkg = require('../../package.json');
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Check for available updates to @nolrm/contextkit on npm.
|
|
6
|
+
* Results are cached for 24 hours. Notification prints after the command
|
|
7
|
+
* completes. Suppressed automatically in CI environments.
|
|
8
|
+
*/
|
|
9
|
+
function checkForUpdates() {
|
|
10
|
+
try {
|
|
11
|
+
updateNotifier({ pkg }).notify();
|
|
12
|
+
} catch (err) {
|
|
13
|
+
// Never crash the CLI due to a notifier failure
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
module.exports = { checkForUpdates };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nolrm/contextkit",
|
|
3
|
-
"version": "0.12.
|
|
3
|
+
"version": "0.12.19",
|
|
4
4
|
"description": "ContextKit - Context Engineering for AI Development. Provide rich context to AI through structured MD files with standards, code guides, and documentation. Works with Cursor, Claude, Aider, VS Code Copilot, and more.",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"bin": {
|
|
@@ -69,7 +69,8 @@
|
|
|
69
69
|
"fs-extra": "^11.1.1",
|
|
70
70
|
"inquirer": "^8.2.6",
|
|
71
71
|
"js-yaml": "^4.1.0",
|
|
72
|
-
"ora": "^5.4.1"
|
|
72
|
+
"ora": "^5.4.1",
|
|
73
|
+
"update-notifier": "^5.1.0"
|
|
73
74
|
},
|
|
74
75
|
"files": [
|
|
75
76
|
"bin/",
|