@intentic/claude-plugin 1.318.0 → 1.320.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/.claude-plugin/plugin.json +2 -8
- package/README.md +2 -6
- package/bin/fileq +2 -2
- package/dist/fileq.mjs +426 -364
- package/dist/post-bash.mjs +0 -6
- package/dist/prompt-submit.mjs +2 -63
- package/dist/session-start.mjs +4 -27
- package/dist/stats.mjs +13 -77
- package/generated/fileq-NOTICE +4 -4
- package/generated/skills/field-notes/SKILL.md +3 -1
- package/generated/skills/fileq/SKILL.md +8 -7
- package/generated/skills/iq/SKILL.md +1 -0
- package/hooks/hooks.json +1 -11
- package/package.json +4 -4
- package/dist/post-edit.mjs +0 -252
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "intentic",
|
|
3
3
|
"displayName": "Intentic",
|
|
4
|
-
"version": "1.
|
|
5
|
-
"description": "Cheaper, sharper Claude Code sessions: Bash output trimmed before Claude reads it, a project map and this project's field notes at session start, iq code search and fileq document reading taught,
|
|
4
|
+
"version": "1.320.0",
|
|
5
|
+
"description": "Cheaper, sharper Claude Code sessions: Bash output trimmed before Claude reads it, a project map and this project's field notes at session start, iq code search and fileq document reading taught, and /intentic:stats to show what each one saved. Every mechanism is a switch in /config.",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "intentic"
|
|
8
8
|
},
|
|
@@ -64,12 +64,6 @@
|
|
|
64
64
|
"description": "Let Claude read documents, PDFs, spreadsheets, slides, notebooks, images, audio and archives as markdown with the bundled `fileq` CLI. Off makes the command refuse; its one-line skill description stays listed, since a plugin cannot hide its own skills.",
|
|
65
65
|
"default": true
|
|
66
66
|
},
|
|
67
|
-
"shadows": {
|
|
68
|
-
"type": "boolean",
|
|
69
|
-
"title": "Document shadows",
|
|
70
|
-
"description": "Keep a markdown rendering of every document in the project up to date in the background (a sweep at session start and every ten minutes, and each binary file Claude writes), so a read finds one ready. Costs background CPU on a document-heavy project.",
|
|
71
|
-
"default": false
|
|
72
|
-
},
|
|
73
67
|
"holdout": {
|
|
74
68
|
"type": "number",
|
|
75
69
|
"title": "Measured share",
|
package/README.md
CHANGED
|
@@ -20,7 +20,6 @@ The hooks and the bundled commands run on Node.js 20.11 or later, which has to b
|
|
|
20
20
|
| A Bash command succeeds | The output is cleaned before Claude reads it: progress bars, install chatter, repeated lines, the middle of huge logs. A footer names the command that reads the full text back. | `output_cleaners`, `cleaners` |
|
|
21
21
|
| Claude reads a document | `fileq` turns docx, pdf, xlsx, pptx, epub, ipynb, images, audio and archives into markdown. | `fileq` |
|
|
22
22
|
| Claude makes a document | `fileq check` lists what is wrong with a docx, pptx, xlsx or pdf by slide, page or cell, and `fileq render` draws its pages as PNGs for Claude to look at (with LibreOffice and poppler installed). The fileq skill says to run both before handing the file over. | `fileq` |
|
|
23
|
-
| In the background | Every document in the project keeps a markdown shadow that a read finds ready. A sweep runs when a session opens and at most every ten minutes as prompts arrive, and each document Claude writes is rendered at once. Off by default. | `shadows` |
|
|
24
23
|
|
|
25
24
|
A failed command reaches Claude unchanged. Outside an Intentic sandbox there is no secret store to mask values from, so the cleaners mask only text that looks like a credential: an assignment to a name like `API_KEY` or `TOKEN` whose value looks generated, bearer tokens, AWS access keys, and passwords in URLs.
|
|
26
25
|
|
|
@@ -39,7 +38,6 @@ Open `/config` and find the rows under intentic. The switches read at session st
|
|
|
39
38
|
| `field_notes` | on | Send this project's field notes at session start |
|
|
40
39
|
| `iq` | on | Teach `iq` and run its session recall, when `iq` is installed |
|
|
41
40
|
| `fileq` | on | Let the bundled `fileq` run. Off, it refuses, and its skill stays listed because a plugin cannot hide its own skills |
|
|
42
|
-
| `shadows` | off | Keep document shadows fresh in the background |
|
|
43
41
|
| `holdout` | 0.1 | Share of sessions opened without the map, the notes and the iq teaching, so the report can compare |
|
|
44
42
|
|
|
45
43
|
## What it saved
|
|
@@ -62,8 +60,6 @@ The numbers above are an illustration of the format. The report reads two things
|
|
|
62
60
|
- The cleaners' ledger, one row per command with the bytes before and after and what each cleaner removed. That saving is exact. With `output_holdout` above 0 it also compares the median cleaned output against commands left uncleaned.
|
|
63
61
|
- Claude Code's own session transcripts, compared across the two arms each session was drawn into. A hash of the session id puts `holdout` of the sessions in the control arm for each mechanism, so the draw needs no state and gives the same answer every time it is read. The map is judged on directory listings of the project root in the first turn, the field notes on failed tool calls, and the iq teaching on search calls. A change is stated only once both arms hold 30 samples and the 95% margin excludes zero.
|
|
64
62
|
|
|
65
|
-
Document shadows are counted but not measured.
|
|
66
|
-
|
|
67
63
|
The arithmetic is the one behind the savings page of an Intentic sandbox, from the same packages, so a number here means what it means there.
|
|
68
64
|
|
|
69
65
|
## Field notes
|
|
@@ -74,9 +70,9 @@ Run `/intentic:field-notes` every few weeks. It counts this project's sessions (
|
|
|
74
70
|
|
|
75
71
|
| Path | Holds |
|
|
76
72
|
| --- | --- |
|
|
77
|
-
| `~/.claude/plugins/data/intentic-intentic/` | `sessions.jsonl` (the arms each session drew), `options.json` (the switches of the last session), `output/` (the cleaners' ledger, the full text of trimmed commands, the repeat cache),
|
|
73
|
+
| `~/.claude/plugins/data/intentic-intentic/` | `sessions.jsonl` (the arms each session drew), `options.json` (the switches of the last session), `output/` (the cleaners' ledger, the full text of trimmed commands, the repeat cache), `iq/` (the logs of iq's transcript ingest) |
|
|
78
74
|
| `.claude/intentic/field-notes.toon` | This project's field notes |
|
|
79
|
-
| `.intentic/local/cache/derived/` |
|
|
75
|
+
| `.intentic/local/cache/derived/` | `fileq`'s cache: the markdown of each document it has read, reused while the document is unchanged. The directory ignores itself in git |
|
|
80
76
|
|
|
81
77
|
The plugin makes no network requests. Uninstalling it deletes the data directory unless you pass `--keep-data`.
|
|
82
78
|
|
package/bin/fileq
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/bin/sh
|
|
2
2
|
# fileq, bundled with the intentic plugin. A fileq installed on PATH ahead of this one wins (Claude Code puts a plugin's
|
|
3
|
-
# bin/ after the user's own PATH); this one answers otherwise. Its
|
|
4
|
-
# exported, so a `cd` inside the session does not scatter
|
|
3
|
+
# bin/ after the user's own PATH); this one answers otherwise. Its cache is keyed to the project the SessionStart hook
|
|
4
|
+
# exported, so a `cd` inside the session does not scatter it.
|
|
5
5
|
if [ "${INTENTIC_FILEQ:-1}" = "0" ]; then
|
|
6
6
|
echo "fileq is switched off in the intentic plugin (/config). Tell the user rather than converting the file another way." >&2
|
|
7
7
|
exit 2
|