@owlmeans/agent-skills 0.1.12 → 0.1.15

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.
@@ -23,7 +23,9 @@ npx @owlmeans/create-app my-app
23
23
 
24
24
  By default it copies the template, runs `git init`, installs dependencies, and **deploys agent
25
25
  guidance** into the project via [[bun]]-installed `@owlmeans/agent-skills` (`.claude/skills/` +
26
- `.github/instructions/`).
26
+ `.github/instructions/`). With `--no-install` the deploy still runs — the installer's own bundled
27
+ extras give the project its general/harness guidance; only the package-specific skills wait for
28
+ `npx @owlmeans/agent-skills` after the install.
27
29
 
28
30
  Flags: `--name <name>`, `--pm <bun|npm|yarn>` (default `bun`), `--no-install`, `--no-skills`,
29
31
  `--no-git`, `--yes`/`-y`, `--help`.
@@ -50,29 +52,38 @@ primitives + layout/nav/screens). Finish with `npx @owlmeans/agent-skills` to ad
50
52
  ```
51
53
  my-app/
52
54
  ├── package.json # bun workspaces: sources/*
53
- ├── CLAUDE.md # agent context: memory + skill directives + project-purpose placeholder
55
+ ├── CLAUDE.md # git/reporting/memory/self-education rules + project-purpose placeholder
54
56
  ├── .github/
55
57
  │ ├── copilot-instructions.md # same directives for Copilot
56
- │ └── memory/MEMORY.md # starter memory index
57
- ├── .claude/memory/MEMORY.md # starter memory index
58
+ │ └── instructions/ # seeded harness instructions (+ deployed ones)
59
+ ├── .claude/skills/ # seeded harness skills (+ deployed ones)
60
+ ├── .agents/memory/MEMORY.md # starter shared memory graph index (both tools)
58
61
  ├── sources/common/ # consts, types, schemas, config, modules (entrypoints)
59
62
  ├── sources/api/ # context.ts (appendStaticResource), app/session/*, modules.ts, index.ts
60
63
  └── sources/web/ # vite + tailwind v4, components/ui/*, layout, nav, screens, render.tsx
61
64
  ```
62
65
 
66
+ Memory lives **only** in `.agents/memory/` — the legacy `.claude/memory/` and `.github/memory/`
67
+ starters are gone (see [[agent-memory]]; [[memory-recompact]] migrates a project that still has them).
68
+
63
69
  The session demo stores items in `@owlmeans/static-resource`, namespaced by a client-generated
64
70
  `sid` kept in `localStorage` — no database, no authentication. See [[static-resource]],
65
71
  [[server-app]], [[web-panel]].
66
72
 
67
73
  ## Generated agent guidance
68
74
 
69
- `CLAUDE.md` and `.github/copilot-instructions.md` carry the same memory and skill directives as a
70
- real OwlMeans project, plus a **project-purpose placeholder** (`<!-- OWLMEANS:PROJECT-PURPOSE -->`).
71
- On the first agent session that block instructs the agent to ask the user what the project is for and
72
- replace it in both files. The deployed skills include the general management skills
73
- [[skill-authoring]], [[agent-memory]] and the mandatory [[reuse-code]] (find an existing `@owlmeans/*`
74
- package or code before proposing third-party libraries or custom solutions) so the project can grow its own guidance.
75
- `CLAUDE.md` and `.github/copilot-instructions.md` reference [[reuse-code]] as mandatory. After adding any
76
- `@owlmeans/*` dependency, re-run `npx @owlmeans/agent-skills` — discovery scans **every**
77
- `node_modules/@owlmeans` in the workspace (root and nested under `sources/*`), so package-specific
78
- skills are picked up even though bun nests them.
75
+ `CLAUDE.md` and `.github/copilot-instructions.md` carry the same four mandatory sections as a real
76
+ OwlMeans monorepo — **Git Workflow**, **Reporting**, **Memory** (the `.agents/memory/` graph store),
77
+ **Self-Education** — plus the mandatory [[reuse-code]] section and a **project-purpose placeholder**
78
+ (`<!-- OWLMEANS:PROJECT-PURPOSE -->`). On the first agent session that block instructs the agent to
79
+ ask the user what the project is for and replace it in both files.
80
+
81
+ The harness guidance is **seeded into the template** as generated, banner-carrying copies, so a
82
+ project has it even before the installer runs: [[agent-memory]], [[memory-promotion]],
83
+ [[memory-recompact]], [[self-education]], [[skill-authoring]], `git`, [[reuse-code]],
84
+ [[getting-started]]. Regenerate the seed with `sync-agent-meta --seed-only` in the library-manager;
85
+ never hand-edit a seeded copy. The installer adds the remaining general skills
86
+ ([[scaffolding]], [[router-plugins]], [[shadcn-web]], [[shadcn-versions]]) and every
87
+ package-specific one. After adding any `@owlmeans/*` dependency, re-run `npx @owlmeans/agent-skills`
88
+ — discovery scans **every** `node_modules/@owlmeans` in the workspace (root and nested under
89
+ `sources/*`), so package-specific skills are picked up even though bun nests them.
@@ -0,0 +1,83 @@
1
+ ---
2
+ name: self-education
3
+ description: Mandatory post-development guidance updating — after functionality is added or changed, rewrite the project skills/instructions the work touched as current rules (never as change notes), record external-doc findings (URL + gist) in the governing skill, or add skills/instructions for new subsystems and technologies. Required before the completion report whenever development started from a plan agreed with the agent.
4
+ user-invocable: true
5
+ scope: general
6
+ ---
7
+ <!-- AUTO-GENERATED — do not edit. Regenerate via sync-agent-meta. -->
8
+
9
+ # Self-education
10
+
11
+ After functionality is added or changed, the guidance that describes it must catch up — the agent
12
+ teaches itself for next time. This pass runs after implementation and verification, **before**
13
+ the completion report.
14
+
15
+ ## When (mandatory)
16
+
17
+ Development "started from planning" when the session produced a plan the operator approved before
18
+ implementation — a plan-mode approval, an agreed written plan/spec, or an explicit "go ahead" on
19
+ a proposed approach. **Approval of a plan is simultaneously approval of its implicit final step:
20
+ this self-education pass.** A planned task is not finishable without it. If guidance files cannot
21
+ be edited (read-only run), list the required updates in the report instead.
22
+
23
+ Also recommended after any unplanned change that made an existing skill/instruction inaccurate.
24
+
25
+ ## Review checklist
26
+
27
+ For each area the work touched:
28
+
29
+ 1. Which existing skill/instruction covers it? (Check `.claude/skills/` +
30
+ `.github/instructions/`.)
31
+ 2. Do its commands, paths, APIs, and behavior claims still hold after the change?
32
+ 3. Fix in place — rewrite the affected lines so they describe current behavior; never append a
33
+ note about what this change did. Keep the skill and its instruction twin in sync.
34
+
35
+ ## Shape of an update
36
+
37
+ Skills and instructions state **current rules, not what changed**. Every edit is a rewrite in
38
+ place of the affected lines.
39
+
40
+ Never write into a skill or instruction: dated bulletins ("2026-07-05 — …"), phase or migration
41
+ status ("Phase 3 complete", "migration done", "landed"), "formerly X, now Y", incident
42
+ narratives, fixed-bug logs, or point-in-time inventories. If a line only makes sense to someone
43
+ who watched the change happen, it does not belong in guidance — the rule it taught does, stated
44
+ timelessly. Facts too specific to generalize go to `.agents/memory/` (`agent-memory`); the
45
+ rewrite recipe is `memory-promotion` → Distillation.
46
+
47
+ Test: a finished skill reads as though the feature was always this way.
48
+
49
+ ## Non-project skills
50
+
51
+ If a general or imported skill gained an important usage pattern during the work, add the pattern
52
+ to the **deployed copy** in this repo and note it in the report as an upstream candidate —
53
+ canonical archive copies change only on explicit operator request.
54
+
55
+ ## External docs
56
+
57
+ If the work required reading internet documentation for an external API, library, or service,
58
+ the governing skill must record it under an `## External docs` heading:
59
+
60
+ ```
61
+ - <URL> — <one-line gist of what it settled> (<version/date if load-bearing>)
62
+ ```
63
+
64
+ Governing skill = the project skill covering the touched area; else the skill covering that
65
+ library; if none exists and the technology will recur, create one (update-vs-create rule in
66
+ `memory-promotion`). Never leave doc findings only in memory or the conversation.
67
+
68
+ ## New subsystems / technologies
69
+
70
+ When new technology or a new subsystem entered the repo: create the skill/instruction pair for
71
+ its procedures, and/or the `.agents/memory/` node for its facts — split along the
72
+ memory-vs-skill boundary (`agent-memory` / `memory-promotion`).
73
+
74
+ ## Completion gate
75
+
76
+ The completion report must contain a Self-education table:
77
+
78
+ | Item | Action | Path |
79
+ |---|---|---|
80
+ | <area/skill> | updated / created / none-needed | <path> |
81
+
82
+ "none-needed" requires a one-phrase reason. A post-plan completion report without this table is
83
+ a protocol violation.
@@ -65,15 +65,20 @@ skill").
65
65
  - **Skill / instruction** — a reusable procedure or reference you (or the tools) will want again,
66
66
  worth auto-invoking. Lives in `.claude/skills/` + `.github/instructions/`.
67
67
  - **Memory** — a fact, decision, or gotcha specific to this project's history/state. Lives in
68
- `.claude/memory/` + `.github/memory/`. See the `agent-memory` skill.
68
+ the shared `.agents/memory/` graph store (both tools). See the `agent-memory` skill; promotion
69
+ triggers and the update-vs-create rule live in `memory-promotion`.
69
70
 
70
71
  If you find yourself writing "last time we…", that is memory. If you are writing "to do X, do Y",
71
72
  that is a skill.
72
73
 
74
+ Never paste memory text into a skill. Memory content enters guidance only as a restated general
75
+ rule — trigger, step, and the failure it prevents, with dates, phase/status markers, versions and
76
+ incident narrative stripped (`memory-promotion` → Distillation).
77
+
73
78
  ## After adding a skill
74
79
 
75
80
  1. If it replaces an ad-hoc `.claude/<topic>.md`, remove that file.
76
- 2. Mention it in `.claude/memory/MEMORY.md` (and `.github/memory/MEMORY.md`) so future sessions know
77
- it exists.
81
+ 2. If it distilled memory content into rules, shrink the source `.agents/memory/` node to a
82
+ pointer line (`memory-promotion`) — the memory index does not list skills.
78
83
  3. Reference it from `CLAUDE.md` / `.github/copilot-instructions.md` if it should be discoverable
79
84
  every session.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@owlmeans/agent-skills",
3
- "version": "0.1.12",
3
+ "version": "0.1.15",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "scripts": {
@@ -26,10 +26,10 @@
26
26
  },
27
27
  "devDependencies": {
28
28
  "@owlmeans/dep-config": "workspace:*",
29
- "@types/bun": "^1.3.0",
30
- "@types/node": "^24.10.1",
31
- "nodemon": "^3.1.11",
32
- "typescript": "^6.0.2"
29
+ "@types/bun": "^1.3.14",
30
+ "@types/node": "^26.1.0",
31
+ "nodemon": "^3.1.14",
32
+ "typescript": "^6.0.3"
33
33
  },
34
34
  "publishConfig": {
35
35
  "access": "public"