Skip to content
@GhostPawJS

GhostPaw

Durable local state for AI agents: memory, tasks, contacts, identity, skills, email and Telegram. Zero-dependency TypeScript on SQLite.

GhostPaw: durable local state for AI agents

Seven small TypeScript libraries that give an AI agent a place to keep its state: what it believes, what it has to do, who it knows, who it is, what it has learned, and the two channels it talks through. Each one stores plain records in a SQLite file you can open, inspect and delete.

They are built for agents that run on their own for days. When an agent saves a wrong fact, marks a task done without doing it, or rewrites its own prompt, the record shows it and the change can be undone.

Libraries

Library Keeps What it does
codex
site · npm
Memory Beliefs with a source, a certainty and a revision history. Stale or weakly evidenced beliefs are flagged.
npm i @ghostpaw/codex
questlog
site · npm
Tasks Quests, deadlines, scheduled windows and RRULE repeats. A quest finishes only with a written outcome.
npm i @ghostpaw/questlog
affinity
site · npm
Contacts People, identities, promises and yearly dates, with a radar for relationships that are drifting.
npm i @ghostpaw/affinity
souls
site · npm
Identity A prompt kept as an essence plus evidence-backed traits. Refinement waits until evidence agrees; every change rolls back.
npm i @ghostpaw/souls
grimoire
site · npm
Skills SKILL.md folders whose improvements are sealed as git commits, with evidence notes, a health check and rollback.
npm i @ghostpaw/grimoire
email
site · npm
Email IMAP sync and SMTP send in-process, with a SQLite cache, threads and FTS5 search. Reading and sending are separate tools.
npm i @ghostpaw/email
telegram
site · npm
Telegram Every bot update mirrored into SQLite before your handler runs, with edit history, files and search. Agent tools return plans by default.
npm i @ghostpaw/telegram

How they fit together

  • No shared core. The packages never import each other. Your agent's code carries data from one to the next, and each library keeps its own tables. Install one and ignore the rest.
  • Same runtime. Node.js 24 or newer and its built-in node:sqlite. Zero runtime dependencies, MIT licence.
  • Four ways in. A library import, a stdio MCP server, a ghostpaw-<name> command line tool, and an Agent Skill. All four are generated from the same tool definitions.
  • State you can find. The MCP servers default to ~/.ghostpaw/<name>.db. grimoire also keeps its SKILL.md files in a git folder.
npm install @ghostpaw/codex          # use it as a library
npx -y @ghostpaw/codex mcp           # or run it as an MCP server

Every server is listed in the MCP Registry under io.github.GhostPawJS/<name>.

Links

ghostpaw.dev · llms.txt · npm @ghostpaw · Contributing · Security · Support

Pinned Loading

  1. codex codex Public

    Memory for AI agents: beliefs with a source, a certainty and a revision history. SQLite, zero deps, MCP server.

    TypeScript 2 1

  2. questlog questlog Public

    Tasks for AI agents: quests, deadlines and repeats that finish only with an outcome. SQLite, zero deps, MCP server.

    TypeScript 1

  3. affinity affinity Public

    Contacts for AI agents: people, promises, yearly dates and a radar for who is drifting. SQLite, zero deps, MCP server.

    TypeScript 1

  4. souls souls Public

    Identity for AI agents: prompts that evolve from evidence-backed traits, with rollback. SQLite, zero deps, MCP server.

    TypeScript 1

  5. grimoire grimoire Public

    Skills for AI agents: SKILL.md folders sealed as git commits, with notes and rollback. SQLite, zero deps, MCP server.

    TypeScript 1 1

  6. email email Public

    Email for AI agents: IMAP and SMTP with a local cache, threads, search and split tools. SQLite, zero deps, MCP server.

    TypeScript 1

Repositories

Showing 10 of 10 repositories

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…