create-agent

star 16.5k

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

vectorize-io By vectorize-io schedule Updated 5/8/2026

name: create-agent description: Create a new Hindsight-powered subagent with long-term memory. Use when the user wants a specialized agent that learns and remembers across sessions. allowed-tools: Bash(ls ~/.self-driving-agents/) Bash(cat ~/.self-driving-agents/) Write mcp__hindsight__*

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
Install via CLI
npx skills add https://github.com/vectorize-io/hindsight --skill create-agent
Repository Details
star Stars 16,510
call_split Forks 944
navigation Branch main
article Path SKILL.md
More from Creator
vectorize-io
vectorize-io Explore all skills →