skillpack-harvest

skillpack-harvest is a skill for Claude Code, Codex from timurgaleev/memex. It costs 79 tokens per session (2,643 once invoked), scanned C, original, MIT.

An editorial workflow for moving a mature agent skill from a project workspace into a shared skill library. It removes project-specific details so other workspaces can reuse the skill.

In plain words
What is it for?
Use it to preview the files, generalize the skill, check for privacy problems, review the changes, and prepare the shared library version for approval.
Why use it?
It helps turn a skill that works in one project into a safe, general reference without accidentally sharing private names, entities, or internal details.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Needs its repository: it reads a path above its own folder, which exists only inside the repository. The line is **Convention:** see [_brain-filing-rules.md](../_brain-filing-rules.md) for.

Good fit Use it to preview the files, generalize the skill, check for privacy problems, review the changes, and prepare the shared library version for approval.

Compare 6 skills from other repositories ↓
Install

Getting it into your agent

It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.

Clone the repo
git clone --depth 1 https://github.com/timurgaleev/memex
agentmods
npx agentmods add skills/timurgaleev/memex/skillpack-harvest

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for skillpack-harvest

README.md
[![agentmods](https://agentmods.dev/badge/skills/timurgaleev/memex/skillpack-harvest.svg)](https://agentmods.dev/skills/timurgaleev/memex/skillpack-harvest)
Your own site
<a href="https://agentmods.dev/skills/timurgaleev/memex/skillpack-harvest"><img src="https://agentmods.dev/badge/skills/timurgaleev/memex/skillpack-harvest.svg" alt="Measured on agentmods" height="20"></a>
Per session 79 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,643 The whole file, excluding the scripts and references it only reads on demand.
Security scan C 1 finding. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00079 $0.02643
Opus 5 $0.00039 $0.01321
Sonnet 5 $0.00016 $0.00529
Haiku 4.5 $0.00008 $0.00264

Measured 7d ago against content hash 4af9d750a8be, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-07, from the pricing page.

Security

Grade C, and why

skillpack-harvest scanned grade C with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 7d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Recursive force deletehighDestructive command

rm -rf with a variable or a broad path is one typo away from removing the wrong tree.

retains its skill. Don't `rm -rf` the source after harvesting.
deploy/skills/skillpack-harvest/SKILL.md · 274 lines

How it starts

The opening of the file, as written. The whole thing — 274 lines — stays where its author put it; the contents beside it link to each section on GitHub.

skillpack-harvest — Editorial workflow for lifting host skills into the pack

Convention: see _brain-filing-rules.md for file placement rules. This skill writes into the skillpack's own tree, not brain pages.

This skill is the inverse of memex skillpack scaffold. Scaffold ships skills downstream (pack → host workspace). Harvest lifts proven patterns upstream (host workspace → pack) so they become references every other client of the brain can scaffold.

Contract

A harvest is "properly done" when:

  1. The host skill is mature (used in production, recent routing-eval cases pass).
  2. The editorial genericization in Phase 3 has scrubbed every workspace-specific reference (names, real entities, internal channels).
  3. memex skillpack harvest --dry-run previewed the file set.
  4. The real memex skillpack harvest <slug> --from <host> succeeded with status: harvested (no privacy-lint hits).
  5. memex skillpack check passes on the new skills/<slug>/SKILL.md.
  6. The user has reviewed the diff in the pack checkout and explicitly approved the commit.

If any of these is incomplete, the skill is NOT yet harvested — the files may sit in the pack's working tree, but they're not landed.

Output Format

This skill produces two artifacts in the pack's working tree:

  1. skills/<harvested-slug>/SKILL.md (and any sibling files like routing-eval.jsonl)
  2. Paired source files at their mirror paths (e.g. src/commands/<slug>.ts) when the host SKILL.md declared them in frontmatter sources:

Nothing else in the pack needs editing — the slug becomes visible to list_skills on the strength of its directory, and memex skillpack regenerates the bundle's .manifest.json from the tree at bundle time.

The session output to the user is a one-line success summary plus a list of files written. JSON mode (--json) returns the full HarvestResult shape for machine consumption.

Anti-Patterns

  • Skipping the dry-run. Always preview first. Files land in the pack's working tree; cleanup is a git checkout away, but you shouldn't need to.
  • Trusting the linter alone. The default regex set catches the common cases. It doesn't catch every proper noun. Phase 3 (the editorial pass) is the primary defense.
  • Harvesting --no-lint without justification. The lint exists for a reason. If you bypass it, document why in the commit.
  • Harvesting a skill that's still in flux. Wait until the host version stabilizes. Otherwise you'll harvest, then re-harvest, then re-harvest, and that churns the pack for no benefit.
  • Moving files instead of copying. Harvest is a copy. The host retains its skill. Don't rm -rf the source after harvesting.
  • Harvesting batch (multiple skills at once). Not supported, and for good reason — the editorial review per skill is real work.

Read the full file on GitHub · 274 lines

Files

What ships with it

1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 7d ago First seen · 274 lines · 79 tokens per session scan C 4af9d750a8be

Subscribe to this mod's changes

skillpack-harvest is a skill published in the GitHub repository timurgaleev/memex (8 stars, last pushed today), licensed MIT. It adds 79 tokens to every session and 2,643 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it C with 1 finding (recursive force delete). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

design-mcp-server

Design the tool surface, resources, and service layer for a new MCP server. Use when starting a new server, planning a major feature expansion, or when the user describes a domain/API they want to expose via MCP. Produces a design doc at docs/design.md that drives implementation.

cyanheads/obsidian-mcp-server · 62 tokens

api-context

Canonical reference for the unified Context object passed to every tool and resource handler in @cyanheads/mcp-ts-core. Covers the full interface, its RequestContext base, all sub-APIs (ctx.log, ctx.state, ctx.requestInput, ctx.inputs, ctx.enrich, ctx.content), and when to use each.

cyanheads/obsidian-mcp-server · 79 tokens

api-canvas

DataCanvas primitive reference — a Tier 3 SQL/analytical workspace for tabular MCP servers, backed by DuckDB. Use when registering tables from upstream APIs, running ad-hoc SQL across them, and exporting results. Covers the acquire → register → query → export flow, per-table TTL, the token-sharing pattern for…

cyanheads/obsidian-mcp-server · 85 tokens

api-testing

Testing patterns for MCP tool/resource handlers using createMockContext and Vitest. Covers mock context options, handler testing, McpError assertions, format testing, Vitest config setup, and test isolation conventions.

cyanheads/obsidian-mcp-server · 46 tokens

field-test

Exercise tools, resources, and prompts against a live HTTP server via MCP JSON-RPC over curl. Starts the server, surfaces the catalog, runs real and adversarial inputs, and produces a tight report with concrete findings and numbered follow-up options. Use after adding or modifying definitions, or when the user asks to…

cyanheads/obsidian-mcp-server · 76 tokens

orchestrations

Pick and run a multi-phase workflow that chains foundational task skills (git-wrapup, release-and-publish, maintenance, field-test, setup, etc.) end-to-end. Routes user intent to a workflow file under workflows/ — greenfield builds, maintenance + release, field-test + fix, or known-work + release. Single source for…

cyanheads/obsidian-mcp-server · 159 tokens