@jqntn/agentdoctor 0.1.3 → 0.1.4
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 +23 -7
- package/docs/agents.md +2 -2
- package/package.json +1 -1
- package/plugin/.claude-plugin/plugin.json +1 -1
- package/plugin/README.md +7 -0
- package/src/constants.js +10 -0
- package/src/index.js +1 -1
package/README.md
CHANGED
|
@@ -68,6 +68,28 @@ Summary Grade F 3 errors, 1 warning (72 rules, 41ms)
|
|
|
68
68
|
|
|
69
69
|
Zero dependencies. No network calls. Credential files are never opened. MIT — all of it.
|
|
70
70
|
|
|
71
|
+
## Install
|
|
72
|
+
|
|
73
|
+
Run it once with no install at all:
|
|
74
|
+
|
|
75
|
+
```sh
|
|
76
|
+
npx @jqntn/agentdoctor
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
Install the CLI:
|
|
80
|
+
|
|
81
|
+
```sh
|
|
82
|
+
npm install -g @jqntn/agentdoctor
|
|
83
|
+
npm install -D @jqntn/agentdoctor
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
Install as a Claude Code plugin, which adds the audit skill to every session:
|
|
87
|
+
|
|
88
|
+
```sh
|
|
89
|
+
/plugin marketplace add jqntn/agentdoctor
|
|
90
|
+
/plugin install agentdoctor@jqntn
|
|
91
|
+
```
|
|
92
|
+
|
|
71
93
|
## What it checks
|
|
72
94
|
|
|
73
95
|
Findings fall into five categories. The bar for a rule is that it catches a failure that
|
|
@@ -175,14 +197,8 @@ The repo is also a **Claude Code plugin**: it ships the
|
|
|
175
197
|
invokable as `/agentdoctor:config-audit`. Install it any of three ways:
|
|
176
198
|
|
|
177
199
|
```
|
|
178
|
-
# in Claude Code, then: /plugin install agentdoctor
|
|
179
200
|
/plugin marketplace add jqntn/agentdoctor
|
|
180
|
-
|
|
181
|
-
# copies the skill into this project only
|
|
182
|
-
npx @jqntn/agentdoctor --init-skill
|
|
183
|
-
|
|
184
|
-
# by hand, from an installed package
|
|
185
|
-
cp -r node_modules/@jqntn/agentdoctor/plugin/skills/config-audit .claude/skills/
|
|
201
|
+
/plugin install agentdoctor@jqntn
|
|
186
202
|
```
|
|
187
203
|
|
|
188
204
|
[Agent guide](docs/agents.md)
|
package/docs/agents.md
CHANGED
|
@@ -67,7 +67,7 @@ agent that can run a shell command can use agentdoctor. What differs per tool is
|
|
|
67
67
|
|
|
68
68
|
| Agent | Mechanism | Install |
|
|
69
69
|
|---|---|---|
|
|
70
|
-
| Claude Code | Skill + plugin (`/agentdoctor:config-audit`) | `/plugin marketplace add jqntn/agentdoctor`
|
|
70
|
+
| Claude Code | Skill + plugin (`/agentdoctor:config-audit`) | `/plugin marketplace add jqntn/agentdoctor` then `/plugin install agentdoctor@jqntn` |
|
|
71
71
|
| OpenAI Codex | `AGENTS.md` | `npx @jqntn/agentdoctor --init-agents` |
|
|
72
72
|
| Cursor | `AGENTS.md` | `npx @jqntn/agentdoctor --init-agents` |
|
|
73
73
|
| Gemini CLI / Jules | `AGENTS.md` | `npx @jqntn/agentdoctor --init-agents` |
|
|
@@ -108,7 +108,7 @@ Three ways to install it:
|
|
|
108
108
|
|
|
109
109
|
| Method | Command | Scope |
|
|
110
110
|
|---|---|---|
|
|
111
|
-
| Claude Code plugin | `/plugin marketplace add jqntn/agentdoctor` then `/plugin install agentdoctor` | everywhere, invokable as `/agentdoctor:config-audit` |
|
|
111
|
+
| Claude Code plugin | `/plugin marketplace add jqntn/agentdoctor` then `/plugin install agentdoctor@jqntn` | everywhere, invokable as `/agentdoctor:config-audit` |
|
|
112
112
|
| CLI | `npx @jqntn/agentdoctor --init-skill` | this project |
|
|
113
113
|
| Manual | `cp -r node_modules/@jqntn/agentdoctor/plugin/skills/config-audit .claude/skills/` | anywhere |
|
|
114
114
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jqntn/agentdoctor",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.4",
|
|
4
4
|
"description": "Lint and grade your AI coding-agent configuration: permissions, hooks, MCP servers, skills, subagents and CLAUDE.md. Catches silent failures, security holes and context waste, with fixes. Zero dependencies, no telemetry.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"agent",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agentdoctor",
|
|
3
3
|
"description": "Audit and fix AI coding-agent configuration: permissions, hooks, MCP servers, skills and memory files. Adds the config-audit skill, invokable as /agentdoctor:config-audit. The linter itself runs via npx - nothing else to install.",
|
|
4
|
-
"version": "0.1.
|
|
4
|
+
"version": "0.1.4",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Julien QUENTIN",
|
|
7
7
|
"url": "https://github.com/jqntn"
|
package/plugin/README.md
CHANGED
|
@@ -4,6 +4,13 @@ This directory is the installable plugin: a manifest and the `config-audit` skil
|
|
|
4
4
|
else. It is deliberately separate from the repository root so that installing the plugin fetches
|
|
5
5
|
only these files — not the linter's source, its test fixtures, or the site generator.
|
|
6
6
|
|
|
7
|
+
## Install
|
|
8
|
+
|
|
9
|
+
```sh
|
|
10
|
+
/plugin marketplace add jqntn/agentdoctor
|
|
11
|
+
/plugin install agentdoctor@jqntn
|
|
12
|
+
```
|
|
13
|
+
|
|
7
14
|
The skill shells out to `npx @jqntn/agentdoctor`, so the plugin itself installs no binary.
|
|
8
15
|
|
|
9
16
|
- Source and issues: <https://github.com/jqntn/agentdoctor>
|
package/src/constants.js
CHANGED
|
@@ -15,6 +15,16 @@ export const SETTINGS_KEYS = new Set([
|
|
|
15
15
|
'sandbox', 'agents', 'alwaysThinkingEnabled', 'spinnerTipsEnabled',
|
|
16
16
|
'attributionSuffix', 'autoUpdates', 'installMethod', 'mcpServers',
|
|
17
17
|
'extraKnownMarkdownFiles', 'schema', '$schema',
|
|
18
|
+
// Plugin and marketplace state, written by Claude Code itself - so anyone with
|
|
19
|
+
// a plugin installed would otherwise see these flagged as unrecognised.
|
|
20
|
+
'enabledPlugins', 'extraKnownMarketplaces',
|
|
21
|
+
// Model selection and effort.
|
|
22
|
+
'availableModels', 'modelOverrides', 'fallbackModel', 'effortLevel',
|
|
23
|
+
'useAutoModeDuringPlan',
|
|
24
|
+
// Managed/enterprise and remote-control settings.
|
|
25
|
+
'allowManagedPermissionRulesOnly', 'disableClaudeAiConnectors',
|
|
26
|
+
'isolatePeerMachines', 'remoteControlAtStartup', 'requiredMinimumVersion',
|
|
27
|
+
'syncClaudeAiSkills', 'crossSessionInbound',
|
|
18
28
|
]);
|
|
19
29
|
|
|
20
30
|
export const PERMISSION_KEYS = new Set([
|
package/src/index.js
CHANGED
|
@@ -3,7 +3,7 @@ import { lint, fingerprint, helpers } from './engine.js';
|
|
|
3
3
|
import { allRules, CATEGORIES } from './rules/index.js';
|
|
4
4
|
import { loadPolicy } from './rules/policy.js';
|
|
5
5
|
|
|
6
|
-
export const VERSION = '0.1.
|
|
6
|
+
export const VERSION = '0.1.4';
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* One-call entry point: discover config, load any team policy, run every rule.
|