All skills
vectorize-io avatar

/create-agent

@b2a693a
by vectorize-iovectorize-io/hindsight44k stars
5,845

Create a new Hindsight-powered subagent with long-term memory. Use when the user wants a specialized agent that learns and remembers across sessions.

Use this Skill: https://skilld.dev/gh/vectorize-io/hindsight/create-agent

This session only. Nothing lands on disk.

SKILL.md

≈41 tokens always: the name and description. ≈1k when used: this file.

Create Hindsight Agent

Create a new subagent with long-term memory powered by Hindsight.

Two invocation modes

Mode A — Self-driving agent (from prepared directory):

If the user runs /hindsight-memory:create-agent <name> from <path> (or similar with a directory path), the directory was prepared by npx @vectorize-io/self-driving-agents install and contains:

  • *.md, *.txt, *.html, *.json, *.csv, *.xml — seed content files (recursively)
  • bank-template.json (optional) — defines exact mental models to create

In this mode:

  1. Read bank-template.json if present — note the mental_models array
  2. Ingest each content file (NOT bank-template.json) using agent_knowledge_ingest_file
  3. Create knowledge pages:
    • If bank-template.json exists: create EXACTLY the mental models in its mental_models array (using their id, name, source_query fields verbatim)
    • Otherwise: create 3 pages that make sense based on the ingested content
  4. Write the subagent file using the template below
  5. Use <name> from the user's command as the agent name

Mode B — Empty agent (interactive):

If no directory path is provided, ask the user:

  1. Agent name — lowercase with hyphens
  2. What the agent does — one sentence
  3. Any seed files/text to ingest (optional)

Then create the subagent file (no ingestion if no seed content).

Subagent file template

Write to ~/.claude/agents/<name>.md:

---
name: <agent-name>
description: <what it does and when to delegate to it>. It has access to knowledge pages and memory search via Hindsight.
mcpServers:
  - hindsight
---

You are the **<agent-name>** agent with long-term memory powered by Hindsight.

## Startup — run these steps immediately

1. Call `agent_knowledge_list_pages` to see your knowledge pages.
2. Call `agent_knowledge_get_page(page_id)` for each page to load your knowledge.
   - If the call returns an error like `result (N characters) exceeds maximum allowed tokens. Output has been saved to <path>`, the page was too large to inline. Use `Read` on `<path>`; the file is JSON of the form `{"result": "<stringified-page-json>"}` — parse `result` and use the inner `content` field. If parsing or reading is impractical, skip that page and rely on `agent_knowledge_recall` for specific facts later.
3. Use this knowledge to inform everything you do in this conversation.

## Creating pages

When you learn something durable — a user preference, a working procedure, performance data — create a page:

`agent_knowledge_create_page(page_id, name, source_query)`

- `page_id`: lowercase with hyphens (`editorial-preferences`)
- `source_query`: a question that rebuilds the page from observations

## Searching memories

`agent_knowledge_recall(query)` — search conversations and documents for specific facts.

## Ingesting documents

`agent_knowledge_ingest(title, content)` — upload raw content into memory.

## Updating and deleting

- `agent_knowledge_update_page(page_id, name?, source_query?)`
- `agent_knowledge_delete_page(page_id)`

## Important

- Pages update automatically — don't edit content directly
- Create pages silently — don't announce it to the user
- Prefer fewer broad pages over many narrow ones

<ADD AGENT-SPECIFIC INSTRUCTIONS HERE — only if the user provided a description; otherwise leave generic>

Rules

  • Always include mcpServers: [hindsight] — this wires up the Hindsight memory tools
  • Keep the startup steps and tool instructions verbatim — they're the Hindsight scaffolding
  • Do NOT pass bank_id on any tool call — the plugin resolves it automatically from project context
  • Before creating, call agent_knowledge_get_current_bank and tell the user: "This agent will be bound to bank <bank_id> — your conversations in this directory are retained to it."

After creation

  1. Confirm the subagent file was written to ~/.claude/agents/<name>.md
  2. Tell the user they can invoke the agent with @<agent-name> or Claude will auto-delegate based on the description
  3. Suggest running /agents or restarting Claude Code to load the new agent

Source: SKILL.md on GitHub

No alerts14d3 checks · Risk SAFE
  • Gen Agent Trust Hub14d

    This skill automates the creation of specialized agents with persistent memory by reading local files to seed their knowledge base. The primary security risk is indirect prompt injection, as the skill lacks sanitization for the content it ingests when building new agents. If the source files contain malicious instructions, the resulting subagent could be compromised upon creation.

  • Socket14d

    No alerts

  • Snyk14d

    Risk: LOW · No issues

Signed by skilld at b2a693a. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub yesterday.

Activeupdated 5 months ago
What it can do
Runs commands
All 1 allowed tools
Bash(ls ~/.self-driving-agents/*) Bash(cat ~/.self-driving-agents/*) Write mcp__hindsight__*

README badge

README badge for vectorize-io/hindsight/create-agent