skillwiki 0.10.22 → 0.10.24

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.
Files changed (44) hide show
  1. package/dist/chunk-6ZDKTNLA.js +294 -0
  2. package/dist/chunk-EQPU2BPM.js +468 -0
  3. package/dist/{chunk-54JVBNWK.js → chunk-QBZYEEBD.js} +12 -295
  4. package/dist/chunk-QNTBNNEL.js +616 -0
  5. package/dist/{chunk-7YDWC6D3.js → chunk-SYKSL3JQ.js} +852 -699
  6. package/dist/cli.js +613 -146
  7. package/dist/{index-projection-Q6WL76SO.js → index-projection-FRWTZB5Y.js} +2 -1
  8. package/dist/skillwiki-mcp.js +4 -2
  9. package/dist/sources-L2SQV63E.js +10 -0
  10. package/dist/vault-sync/scripts/wiki-pull-with-auto-resolve.sh +37 -24
  11. package/package.json +1 -1
  12. package/skills/.claude-plugin/plugin.json +1 -1
  13. package/skills/.codex-plugin/plugin.json +1 -1
  14. package/skills/README.md +13 -2
  15. package/skills/agents/wiki-add-task.md +2 -1
  16. package/skills/agents/wiki-archive.md +8 -9
  17. package/skills/agents/wiki-audit.md +2 -1
  18. package/skills/agents/wiki-lint.md +2 -1
  19. package/skills/agents/wiki-query.md +3 -1
  20. package/skills/agents/wiki-reingest.md +9 -8
  21. package/skills/package.json +1 -1
  22. package/skills/skills/using-skillwiki/SKILL.md +19 -13
  23. package/skills/skills/wiki-add-task/SKILL.md +4 -3
  24. package/skills/skills/wiki-archive/SKILL.md +23 -18
  25. package/skills/skills/wiki-audit/SKILL.md +3 -1
  26. package/skills/skills/wiki-init/SKILL.md +12 -1
  27. package/skills/skills/wiki-lint/SKILL.md +2 -1
  28. package/skills/skills/wiki-query/SKILL.md +7 -0
  29. package/skills/skills/wiki-reingest/SKILL.md +12 -8
  30. package/skills/skills/wiki-remove/SKILL.md +22 -5
  31. package/skills/skills/wiki-sync/SKILL.md +2 -3
  32. package/skills/using-skillwiki/SKILL.md +19 -13
  33. package/skills/wiki-add-task/SKILL.md +4 -3
  34. package/skills/wiki-archive/SKILL.md +23 -18
  35. package/skills/wiki-audit/SKILL.md +3 -1
  36. package/skills/wiki-init/SKILL.md +12 -1
  37. package/skills/wiki-lint/SKILL.md +2 -1
  38. package/skills/wiki-query/SKILL.md +7 -0
  39. package/skills/wiki-reingest/SKILL.md +12 -8
  40. package/skills/wiki-remove/SKILL.md +22 -5
  41. package/skills/wiki-sync/SKILL.md +2 -3
  42. package/templates/SCHEMA.md +8 -5
  43. package/templates/web-clipper/llm-wiki-clippings.json +56 -0
  44. package/templates/web-clipper/readme.txt +16 -0
@@ -1,13 +1,14 @@
1
1
  ---
2
2
  name: wiki-remove
3
- description: Hard-delete a vault path with a durable delete-intent tombstone so S3+snapshot cannot resurrect it. Prefer skillwiki remove; if CLI missing, failsafe-git via private GitHub.
3
+ description: Remove maintained vault paths with durable delete intent; raw evidence requires the separate attended exact-target sources dispose workflow.
4
4
  ---
5
5
 
6
6
  # wiki-remove
7
7
 
8
8
  ## When This Skill Activates
9
9
 
10
- - User wants to permanently remove a vault path (not archive-for-reference).
10
+ - User wants to permanently remove a maintained vault path (not archive-for-reference).
11
+ - User explicitly requests permanent disposal of one exact raw object.
11
12
  - Cleanup of stale pages that should not return via snapshot resurrection.
12
13
  - User says hard delete, remove for real, stop resurrecting.
13
14
 
@@ -17,7 +18,7 @@ If `skillwiki` is available: run `skillwiki lang` at the start. Otherwise defaul
17
18
 
18
19
  ## Pre-orientation
19
20
 
20
- Read SCHEMA/index only as needed. Confirm full vault-relative path with the user before delete.
21
+ Read SCHEMA/index only as needed. Confirm the full vault-relative path. First classify the target as maintained content or `raw/**` evidence.
21
22
 
22
23
  ## Probe (required)
23
24
 
@@ -33,7 +34,7 @@ Read SCHEMA/index only as needed. Confirm full vault-relative path with the user
33
34
 
34
35
  Do not auto `npm install -g skillwiki` in headless/goal/satellite sessions.
35
36
 
36
- ## PRIMARY steps
37
+ ## PRIMARY — maintained pages
37
38
 
38
39
  1. Resolve vault: `skillwiki path`.
39
40
  2. Confirm path with user.
@@ -44,9 +45,22 @@ Do not auto `npm install -g skillwiki` in headless/goal/satellite sessions.
44
45
  5. Commit + push via normal wiki-sync / git (tombstone + deletion must reach private `main` for durability).
45
46
  6. Report MODE=primary, paths, and whether remote-delete ran.
46
47
 
48
+ `skillwiki remove` must refuse every `raw/**` target. Do not bypass that refusal.
49
+
50
+ ## PRIMARY — exact raw disposal
51
+
52
+ Permanent raw disposal is exceptional and never inferred from cleanup, dedup, stale, archive, or reingest intent.
53
+
54
+ 1. Require an explicit user request naming one exact raw file and a reason. Refuse basenames, globs, directories, symlinks, batches, and inferred targets.
55
+ 2. Run `skillwiki sources dispose <exact-raw-path> [vault] --reason "<text>"`.
56
+ 3. Present the preview: complete-file SHA-256, byte size, typed/other/asset inbound references, delete-intent path, recoverability statement, operation ID, and approval token.
57
+ 4. Only in the same attended session, after the user approves that exact preview, run the identical command with `--write --approve <token>`.
58
+ 5. The command revalidates bytes and inbound references under the managed lock, writes append-only approval/completion events plus durable delete intent, then removes the exact object.
59
+ 6. Scheduled/headless disposal is always refused. A stale token never authorizes changed state.
60
+
47
61
  ## FAILSAFE-GIT steps (no skillwiki CLI)
48
62
 
49
- Agent **must** have git (and preferably gh) access to private vault remote.
63
+ Agent **must** have git (and preferably gh) access to private vault remote. This fallback is for maintained pages only. If the target is under `raw/`, fail closed until `skillwiki sources dispose` is available; never reproduce raw disposal by hand.
50
64
 
51
65
  1. Confirm path with user. Set `PATH_REL` (vault-relative, no `..`).
52
66
  2. Write tombstone `meta/delete-intents/<slug>.json` where slug is path with `/` → `__`, e.g. `summaries/foo.md` → `summaries__foo.md.json`:
@@ -83,6 +97,7 @@ Delete-Source: failsafe-git
83
97
  - FAIL CLOSED (no CLI and no private git access).
84
98
  - Push to private wiki fails.
85
99
  - Path invalid or under `_archive/` without explicit restore/remove policy.
100
+ - Raw target cannot be processed by the attended exact-target CLI flow.
86
101
 
87
102
  ## Forbidden
88
103
 
@@ -90,6 +105,8 @@ Delete-Source: failsafe-git
90
105
  - Force-push.
91
106
  - Unbounded `rclone sync` / mass remote delete.
92
107
  - Claiming fleet delete complete without tombstone on `origin/main` (and push success).
108
+ - Passing raw paths to ordinary `skillwiki remove`, or using FAILSAFE-GIT/bare filesystem deletion for raw evidence.
109
+ - Scheduled, headless, batch, glob, directory, basename-inferred, or stale-token raw disposal.
93
110
 
94
111
  ## Reversibility
95
112
 
@@ -162,7 +162,7 @@ git -C "$VAULT" rebase --continue
162
162
 
163
163
  **Prevention**:
164
164
  - Sync more frequently — don't let local fall >5 commits behind origin/main
165
- - Bundle archive commits — `skillwiki archive --batch` groups 5-10 transcript archives into one commit, reducing rebase surface
165
+ - Prefer smaller, attended exact-target archive operations and sync promptly; there is no batch raw-archive apply mode.
166
166
  - For vaults with snapshot cron, prefer smaller, more frequent syncs over large batch rebases
167
167
 
168
168
  See `concepts/wiki-sync-rebase-conflict-storm-pattern.md` for detailed analysis.
@@ -220,7 +220,7 @@ Some older deployments separated a cloud-backed live vault from a Git snapshot w
220
220
  - Pushing when lint errors exist.
221
221
  - Auto-resolving body conflicts without user review.
222
222
  - Force-pushing (`git push --force`).
223
- - Modifying files in `raw/` to resolve conflicts (N9 — archive and re-ingest instead).
223
+ - Rewriting raw content/frontmatter to resolve conflicts. Preserve-moves must stay under `raw/` (normally `raw/archived/` or `raw/duplicates/`) and require an attended approved structural command; scheduled/headless sync remains report-only.
224
224
  - Stashing without the `wiki-sync:...` name format (breaks peer detection).
225
225
  - Force-deleting a peer's lockfile (use `--force` only if peer is confirmed dead).
226
226
  - Authoring, copying, editing, staging, committing, pulling, resetting, or pushing agent changes in `/root/wiki-git` (or any configured snapshot worktree).
@@ -242,4 +242,3 @@ Drop a local commit from rebase only when every path is proven present on the ta
242
242
  - CLI: `skillwiki sync lint-delta <vault> --base-ref origin/main`
243
243
  - Block publication only when `new_errors > 0`; inherited full debt remains visible.
244
244
  - Missing/malformed delta evidence blocks (never silent lint skip).
245
-
@@ -12,7 +12,7 @@ This sets the language of generated page prose. Frontmatter keys, schema section
12
12
 
13
13
  ## Layers
14
14
 
15
- - `raw/` — immutable source material (never modify after ingest).
15
+ - `raw/` — immutable evidence. Never rewrite existing content/frontmatter or autonomously remove an object. Attended rename/relocate/archive/dedup is allowed only when exact bytes remain somewhere under `raw/`.
16
16
  - `entities/`, `concepts/`, `comparisons/`, `queries/` — typed knowledge unified across origin via `provenance:`.
17
17
  - `meta/` — cross-project synthesis (notes naming ≥2 projects).
18
18
  - `projects/{slug}/` — per-project lifecycle workspace.
@@ -42,6 +42,7 @@ Rule: every tag on every page MUST appear in this taxonomy. Add new tags here fi
42
42
  - DO NOT create a page for passing mentions.
43
43
  - Split a page when it exceeds ~200 lines.
44
44
  - Archive a page when fully superseded — move to `_archive/`, remove from `index.md`.
45
+ - Raw source lifecycle is separate: preserve archived sources under `raw/archived/{articles,papers,transcripts}/` and preserved duplicates under `raw/duplicates/{articles,papers,transcripts}/`. Legacy `_archive/raw/` is read-only compatibility, never a new-write target.
45
46
 
46
47
  ## Update Policy
47
48
 
@@ -71,8 +72,9 @@ Obsidian-compatible Mermaid rules:
71
72
 
72
73
  ## Ad-Hoc Capture Format
73
74
 
74
- Ad-hoc captures are mutable working notes created during development
75
+ Ad-hoc captures are immutable completed evidence created during development
75
76
  (via `/wiki-add-task` or filesystem drop). They live in `raw/transcripts/`.
77
+ Corrections create a new capture or a maintained work-item note; never edit an existing transcript.
76
78
 
77
79
  ### Frontmatter
78
80
 
@@ -98,15 +100,16 @@ project: # optional: "[[slug]]" for cross-reference
98
100
  | Aspect | Ad-Hoc Capture | Ingested Source |
99
101
  |--------|----------------|-----------------|
100
102
  | Location | `raw/transcripts/` | `raw/articles/`, `raw/papers/`, etc. |
101
- | Mutability | Mutable (working notes) | Immutable after ingest |
103
+ | Mutability | Immutable after capture | Immutable after ingest |
102
104
  | `sha256` | **Omitted** | Required |
103
105
  | `created` | Required | Use `ingested` |
104
106
  | Entry | `/wiki-add-task`, filesystem drop | `wiki-ingest`, `skillwiki fetch` |
105
107
 
106
108
  ## Obsidian Integration
107
109
 
108
- - **Attachment folder:** `raw/assets/` — binary assets (images, diagrams) live here.
109
- Set Obsidian's "Attachment folder path" to `raw/assets` for automatic filing.
110
+ - **Stable asset pool:** binary assets may use any flat or URL-friendly nested path under `raw/assets/`; no fixed internal taxonomy such as papers/transcripts is required.
111
+ - Use explicit vault-root embeds such as `![[raw/assets/example/diagram.png]]` so Obsidian preview and GitHub browsing remain unambiguous.
112
+ - Resolve and preview a new local embed before finalizing its raw capture. Once referenced, the asset path freezes; source archive/dedup does not move it. Remote HTTP(S) images remain external dependencies unless separately captured.
110
113
  - **Dataview queries** (read-only; do not replace index.md):
111
114
 
112
115
  ```dataview
@@ -0,0 +1,56 @@
1
+ {
2
+ "schemaVersion": "0.1.0",
3
+ "name": "llm-wiki-clippings",
4
+ "behavior": "create",
5
+ "noteContentFormat": "{{content}}",
6
+ "properties": [
7
+ {
8
+ "name": "title",
9
+ "value": "{{title}}",
10
+ "type": "text"
11
+ },
12
+ {
13
+ "name": "source_url",
14
+ "value": "{{url}}",
15
+ "type": "text"
16
+ },
17
+ {
18
+ "name": "author",
19
+ "value": "{{author|split:\", \"|wikilink|join}}",
20
+ "type": "multitext"
21
+ },
22
+ {
23
+ "name": "published",
24
+ "value": "{{published|date:\"YYYY-MM-DD\"}}",
25
+ "type": "date"
26
+ },
27
+ {
28
+ "name": "created",
29
+ "value": "{{date|date:\"YYYY-MM-DD\"}}",
30
+ "type": "date"
31
+ },
32
+ {
33
+ "name": "ingested",
34
+ "value": "{{date|date:\"YYYY-MM-DD\"}}",
35
+ "type": "date"
36
+ },
37
+ {
38
+ "name": "ingested_by",
39
+ "value": "manual",
40
+ "type": "text"
41
+ },
42
+ {
43
+ "name": "description",
44
+ "value": "{{description}}",
45
+ "type": "text"
46
+ },
47
+ {
48
+ "name": "tags",
49
+ "value": "clippings",
50
+ "type": "multitext"
51
+ }
52
+ ],
53
+ "triggers": [],
54
+ "noteNameFormat": "{{date|date:\"YYYY-MM-DD\"}}-{{title|safe_name}}",
55
+ "path": "raw/articles"
56
+ }
@@ -0,0 +1,16 @@
1
+ SkillWiki Obsidian Web Clipper template
2
+
3
+ 1. Open Obsidian Web Clipper Settings in the browser profile that will capture this vault.
4
+ 2. Import llm-wiki-clippings.json.
5
+ 3. Confirm the destination path is raw/articles and the behavior is Create.
6
+ 4. Repeat the import for every browser profile that should capture into this vault.
7
+
8
+ The generic template preserves Web Clipper's {{content}} output. Remote HTTP(S)
9
+ images remain external dependencies and are not guaranteed to be downloaded or
10
+ available offline.
11
+
12
+ For attended local asset materialization, an agent may choose any URL-friendly
13
+ path under raw/assets/. Write the asset first, use an explicit vault-qualified
14
+ Obsidian embed such as ![[raw/assets/example/diagram.png]], verify the target and
15
+ preview, and only then finalize the new raw capture. Referenced asset paths are
16
+ stable after capture.