@ainova-systems/intelligence 0.19.0 → 0.21.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/cli/commands/init.sh +2 -1
- package/cli/commands/registry.sh +1 -1
- package/cli/commands/source.sh +1 -1
- package/cli/commands/sync.sh +78 -6
- package/cli/intelligence +15 -2
- package/cli/internal/check.sh +39 -0
- package/cli/internal/convert-legacy.sh +1 -1
- package/cli/internal/package-search.sh +1 -1
- package/cli/internal/package-update.sh +2 -2
- package/cli/internal/restore.sh +3 -2
- package/cli/lib/cli-common.sh +145 -33
- package/cli/lib/gitignore.sh +19 -2
- package/cli/lib/lockfile.sh +14 -4
- package/cli/lib/manifest.sh +147 -1
- package/cli/lib/qmap.awk +97 -32
- package/cli/lib/registry.sh +1 -1
- package/cli/lib/sync-cache.sh +596 -142
- package/cli/lib/sync-lock.sh +19 -2
- package/engine/ENGINE_SHA +1 -1
- package/engine/VERSION +1 -1
- package/engine/adapters/_template.sh +32 -8
- package/engine/adapters/agents.sh +47 -52
- package/engine/adapters/antigravity.sh +71 -53
- package/engine/adapters/claude.sh +42 -57
- package/engine/adapters/codex.sh +77 -16
- package/engine/adapters/copilot.sh +54 -65
- package/engine/adapters/cursor.sh +88 -78
- package/engine/adapters/opencode.sh +23 -32
- package/engine/adapters/pi.sh +140 -42
- package/engine/lib/adapter-contract.sh +36 -4
- package/engine/lib/common.sh +1388 -165
- package/engine/lib/contract.sh +5 -0
- package/engine/sync.sh +145 -38
- package/package.json +1 -1
- package/packages/sync/references/adapters.md +48 -38
- package/packages/sync/references/conventions.md +61 -12
- package/packages/sync/references/onboarding-migration.md +4 -4
- package/packages/sync/rules/intelligence-authoring.md +2 -2
- package/packages/sync/skills/intelligence-learn-from-repository/SKILL.md +7 -5
- package/packages/sync/skills/intelligence-review-context/references/audit-checks.md +1 -1
- package/packages/sync/skills/intelligence-update-context/references/rules.md +5 -0
|
@@ -48,13 +48,13 @@ The mistakes that actually happen, in order of frequency:
|
|
|
48
48
|
|
|
49
49
|
## Rules
|
|
50
50
|
|
|
51
|
-
**Scope with `paths:`.** A rule without `paths:` is loaded into *every* session and inlined into `AGENTS.md` — the most expensive context real estate there is. Earn it. A rule that only matters when someone touches the frontend belongs scoped to the frontend.
|
|
51
|
+
**Scope with `paths:`.** A rule without `paths:` is loaded into *every* session and inlined into `AGENTS.md` — the most expensive context real estate there is. Earn it. A rule that only matters when someone touches the frontend belongs scoped to the frontend. Guidance about one tool belongs to that tool: `targets: [claude]` keeps it out of every other tool's context. A rule whose targets leave `agents` out also leaves `AGENTS.md`, and sync names any tool that can then no longer receive it.
|
|
52
52
|
|
|
53
53
|
**Lead with the positive default, then the invariant.** The model acts on the first instruction it reads, and it follows whatever is named — negation ("never do X") draws attention to X. Reserve absolute language (NEVER, MUST) for true must-nots: safety, security, output format. A judgement call written as a NEVER only teaches the model that NEVERs are negotiable.
|
|
54
54
|
|
|
55
55
|
**Derive from the code, not from prose that already exists.** Every REQUIRED and every invariant must be backed by something observed in the repository. Documentation is a claim, not evidence — read the file.
|
|
56
56
|
|
|
57
|
-
**Describe the repository, not a machine.** The OS, the shell, the editor, a local dev stack, personal tooling — these are environment facts. They belong in a
|
|
57
|
+
**Describe the repository, not a machine.** The OS, the shell, the editor, a local dev stack, personal tooling — these are environment facts. They belong in a local rule, `<content-dir>/rules/<name>.local.md`: Git ignores it, and sync renders it only into outputs Git ignores. A rule is committed and read by everyone, so a shell-specific command or an absolute local path in it is simply wrong for whoever is on another platform.
|
|
58
58
|
|
|
59
59
|
**Explain the why — but only a why you can back.** A reason the reader can check is what makes an instruction survive a judgement call. An invented reason is worse than none: it sounds like evidence.
|
|
60
60
|
|
|
@@ -59,9 +59,10 @@ mechanics; this skill supplies repository judgement.
|
|
|
59
59
|
Treat backed-up legacy root instructions such as `.cursorrules` and an
|
|
60
60
|
instruction-bearing `CLAUDE.md` as migration sources, not permanent parallel
|
|
61
61
|
entry points. Move still-valid shared guidance into project-owned rules; do
|
|
62
|
-
not restore the original monolith.
|
|
63
|
-
|
|
64
|
-
|
|
62
|
+
not restore the original monolith. Approved machine-local guidance becomes a
|
|
63
|
+
local rule, `<content-dir>/rules/<name>.local.md`, which Git ignores and sync
|
|
64
|
+
keeps out of committed output. `AGENTS.md` remains the shared root
|
|
65
|
+
instruction entry point.
|
|
65
66
|
|
|
66
67
|
Review `.gitignore` and every existing `.vscodeignore`, `.npmignore`, and
|
|
67
68
|
`.dockerignore` against the CLI-managed policy. Detect tracked files which
|
|
@@ -95,8 +96,9 @@ explains itself well.
|
|
|
95
96
|
relevant generated `AGENTS.md`, Cursor rules, Claude rules, and any
|
|
96
97
|
packaging/build file list affected by ignore policy. Verify quarantined
|
|
97
98
|
legacy root entry points remain absent. If the user approved a genuinely
|
|
98
|
-
machine-local exception,
|
|
99
|
-
|
|
99
|
+
machine-local exception, write only that content to a local rule
|
|
100
|
+
(`<content-dir>/rules/<name>.local.md`); never copy the backed-up monolith
|
|
101
|
+
back. Completion requires
|
|
100
102
|
`IS_STATUS=ok`, a clean final check, and no `onboarding is pending` header
|
|
101
103
|
after accepted migration.
|
|
102
104
|
11. Report what was created, updated, removed, or deliberately kept. Remind the
|
|
@@ -9,7 +9,7 @@ Apply these checks to the source groups resolved by the review skill.
|
|
|
9
9
|
| **Over the cap** | `SKILL.md` over 1000 lines, rule over 500, agent over 200 | `SPLIT` — two artifacts, or move detail into `references/<topic>.md` |
|
|
10
10
|
| **Shared instruction budget** | The measured shared agents output, or `agents-md` in sync's `CONTEXT:` summary, is over 32 KiB (32,768 bytes) | `COMPACT` — this is Intelligence's recommended maximum, not an adapter rejection threshold; use the compaction procedure in `intelligence-review-context` to reduce the owning sources without teaching terse output |
|
|
11
11
|
| **Rule links to a rule** | A markdown link from one rule to another (`R1`) | `UNLINK` — name the rule instead: always-on rules are inlined into `AGENTS.md` and the scoped channels carry only scoped rules, so the link is dead in at least one output |
|
|
12
|
-
| **Machine facts in a rule** | OS, shell, editor or a local absolute path (`R2`) | `MOVE` — these belong in a
|
|
12
|
+
| **Machine facts in a rule** | OS, shell, editor or a local absolute path (`R2`) | `MOVE` — these belong in a local rule, `<content-dir>/rules/<name>.local.md`, which Git ignores and sync keeps out of committed output; a rule is committed and read by everyone, including whoever is on another platform |
|
|
13
13
|
| **Literal path or command in a skill** | A path *outside the skill's own folder* baked into a procedure (`R3`) | `PARAMETERIZE` — a skill is *executed*, so a literal path breaks the moment the layout moves; resolve it from a rule or from `<manifest>`. **Exempt:** the skill's own bundle (`references/`, `scripts/`, `assets/` — content is co-located with its skill by default); rules and agents (describing the repository is their job); an example inside an output-format block; the resolution step itself |
|
|
14
14
|
| **Skill with no verification** | Nothing at the end proves the procedure worked (`R4`) | `FLAG` — a procedure that proves nothing is a note, or just the work: give it a verification, or delete it |
|
|
15
15
|
| **Pressure marker** | A heading or section named CRITICAL / MANDATORY / HARD RULE / READ FIRST, or a density of `MUST` / `NEVER` / `ALWAYS` with no reason beside it (`R5`) | `REWRITE` - plain heading, one reason per constraint; when several instructions are each marked critical the marker stops carrying information, so keep emphasis for the one instruction demonstrably under-weighted without it |
|
|
@@ -13,6 +13,11 @@
|
|
|
13
13
|
Architecture, Build and test, Examples, and Patterns to recognize and replace.
|
|
14
14
|
Keep reasons that guide judgment and reference real examples. An accepted
|
|
15
15
|
user preference is identified as a preference, not a claim about existing code.
|
|
16
|
+
5. Guidance that belongs to one machine or one person — the OS, the shell, a
|
|
17
|
+
local service, a personal habit — goes in a local rule,
|
|
18
|
+
`<content-dir>/rules/<name>.local.md`. Git ignores it, and sync renders it
|
|
19
|
+
only into outputs Git ignores, so it never reaches `AGENTS.md` or a teammate.
|
|
20
|
+
A local rule cannot share a name with a committed one.
|
|
16
21
|
|
|
17
22
|
For a scoped rule:
|
|
18
23
|
|