@sassywares/skills 0.3.0 → 0.3.1

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sassywares/skills",
3
- "version": "0.3.0",
3
+ "version": "0.3.1",
4
4
  "description": "Lean, explicit-invocation Agent Skills for shipping fast: plan, work, review, validate, ship.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -1,17 +1,20 @@
1
1
  ---
2
2
  name: sassy-skill
3
3
  description: >-
4
- Create, retune, or improve an Agent Skill for pi. Use when asked to create a
5
- skill, turn a workflow into a skill, fix a skill's description or triggering,
6
- restructure a bloated skill, or retune an existing one. Writes to the user or
7
- project skill directory and follows pi's Agent Skills rules.
4
+ Create, retune, or improve an Agent Skill. Asks where the skill should live —
5
+ inside this suite, in a project, or for one user — then writes it there with
6
+ the rules and release steps that location requires. Use when asked to create a
7
+ skill, turn a workflow into a skill, fix a description or triggering,
8
+ restructure a bloated skill, or retune an existing one.
8
9
  argument-hint: "[create|retune] [name, idea, or skill path]"
9
10
  disable-model-invocation: true
10
11
  ---
11
12
 
12
13
  # Sassy Skill
13
14
 
14
- **Outcome:** a well-formed Agent Skill directory installed at the user or project location, or an existing skill improved and re-verified. Pi's loader accepts it with no diagnostics.
15
+ **Outcome:** a well-formed Agent Skill at a location the user chose, or an existing skill improved and re-verified. The harness loads it with no diagnostics.
16
+
17
+ **Locations are not interchangeable** — they decide who gets the skill, how it ships, and what it may be called. Ask before writing.
15
18
 
16
19
  **Scope:** skills only — not extensions, packages, or prompt templates.
17
20
 
@@ -22,11 +25,26 @@ disable-model-invocation: true
22
25
  - **Description:** required, ≤1024 chars. Pi advertises name + description at startup; the body loads only when the skill is used. The description decides whether the skill ever fires — write **what it does and when to use it**.
23
26
  - **Frontmatter fields:** `name`, `description` (required); optional `license`, `compatibility`, `metadata`, `allowed-tools`, `disable-model-invocation`.
24
27
  - Use `disable-model-invocation: true` for skills that should run only via explicit `/skill:name`.
25
- - **Locations:** user `~/.agents/skills/<name>/`; project `<repo>/.agents/skills/<name>/` (discovered from cwd up to the repo root). Also the `skills` array in settings and pi packages.
26
28
  - **Reference other skills by name, never by absolute path.** The suite can live in `~/.agents/skills/`, a project `.agents/skills/`, or inside `node_modules/`, so "load the sassy-commit skill" is portable where a `~/…` path is not. Name a bundled file as "the sassy-setup skill's `references/config.md`".
27
29
  - Pi **validates at startup**; malformed or descriptionless skills warn. `/reload` applies changes.
28
30
  - Pi implements the **Agent Skills specification** (agentskills.io). For the full spec, pi's own `docs/skills.md` is authoritative — read it when the rules here are not enough.
29
31
 
32
+ ## Where the skill lives
33
+
34
+ Ask which one, unless the request already made it obvious. The answer changes the name, the sharing, and whether a release is needed.
35
+
36
+ | Location | Path | Who gets it | Extra work |
37
+ |---|---|---|---|
38
+ | **Internal** — part of this suite | `skills/<name>/` in the sassy-skills repo | Everyone, after a release | Name it `sassy-<name>`, bump `package.json`, run `scripts/sync.sh`, then tag to publish |
39
+ | **Project** — team workflow | `<repo>/.agents/skills/<name>/` | Everyone who clones that repo | Commit it; prefix the project (`tap2-…`) so it can't collide with a suite skill or a harness built-in |
40
+ | **User** — personal workflow | `~/.agents/skills/<name>/` | Only this person, every repo on this machine | None — but nothing gates it either; never put something a teammate needs here |
41
+
42
+ Recommend by audience: the team needs it → **project**; only the requester → **user**; it belongs to every project using this suite → **internal**.
43
+
44
+ Internal is the only one that implies a release. Never choose it silently: from the moment it lands, consumers see it only when they bump their pin. Say that out loud when you do.
45
+
46
+ Paths in the table are the defaults. Harnesses also read `skills` arrays in settings and installed packages, so a skill may live elsewhere — write down where it actually went.
47
+
30
48
  ## Shape rule — the lean rule
31
49
 
32
50
  - **Default to one `SKILL.md`.**
@@ -36,7 +54,7 @@ disable-model-invocation: true
36
54
 
37
55
  ## Workflow
38
56
 
39
- 1. **Intake.** What the skill does, when it should trigger, and whether it is **user-level** or **project-level**. For a retune, read the existing skill and name the specific failure (won't trigger, too long, wrong steps, stale).
57
+ 1. **Intake.** What the skill does, when it should trigger, and **where it lives** — internal, project, or user (see above). Ask; do not infer from the cwd. For a retune, read the existing skill and name the specific failure (won't trigger, too long, wrong steps, stale, wrong scope).
40
58
  2. **Choose the shape.** Single file, or `SKILL.md` + `references/` per the rule above.
41
59
  3. **Write the frontmatter.** A description that states both what and when.
42
60
  4. **Write the body.** Outcome, a hard-rules table, the workflow, and reference pointers. Plain English. Structured output where the skill returns a result. Match this setup's house style.
@@ -59,7 +77,7 @@ When asked to retune or improve a skill, change the **smallest** thing that fixe
59
77
  - **Won't trigger** → rewrite the description (what + when, concrete verbs).
60
78
  - **Too long / bloated** → extract conditional content to `references/`, or delete what never gets used.
61
79
  - **Wrong or stale steps** → correct the workflow against the current tree.
62
- - **Wrong scope** → move it between user and project locations.
80
+ - **Wrong scope** → move it between internal, project, and user. Moving into the suite is a release; moving out of it means the next release drops the skill for everyone.
63
81
 
64
82
  Re-verify after any retune.
65
83