Session Forge

io.github.420247jakePublished by GitHub account 420247jakev2.0.3Updated Oct 24, 2026

Persistent memory and session intelligence for AI coding assistants. Zero config.

VerifiedSTDIODesktop onlyKnowledge & MemoryDeveloper Tools

Overview

AI-generated overview

A local MCP server that gives AI coding assistants persistent memory across sessions: checkpoints, decisions, dead ends, a user profile and journals.

What you can do
Save, restore and complete session checkpoints for crash recovery and interrupted work, and recall full context in one call with an optional project filter. Read and update a user profile of name, preferences, projects and notes. Record and search session journal entries, significant decisions with alternatives and reasoning, and failed approaches with the lesson learned. Browse, filter, delete, prune, export or clear stored data and view per-store statistics.
When to use it
Useful for long-running coding work in Claude Code, Cursor, Windsurf or another MCP client where you want the assistant to carry decisions, preferences and past mistakes from one session to the next, or to resume after an interruption.
Requirements
Runs locally over stdio, typically started with npx from the npm package session-forge, so Node.js and network access for the first install are needed. No accounts, API keys or database. Data is stored as plain JSON under the user's home directory or the app data folder; the optional SESSION_FORGE_DIR and SESSION_FORGE_STALE_HOURS environment variables change the storage location and the stale-session threshold.
Before you install
The server writes persistent local files containing your profile, decisions, journals and session state, and tools can delete entries, prune old data or wipe whole stores, so review destructive calls before approving them. Data stays on the machine according to the README; the README also notes the project is not affiliated with a similarly named company.

Installation

In SourceWeft

  1. Open Session Forge in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

session-forge

Never start from zero. Persistent session intelligence for AI coding assistants.

Session-forge gives your AI coding assistant memory that survives across sessions. It tracks decisions, dead ends, user preferences, and session state — so every conversation builds on the last one instead of starting from scratch.

Works with Claude Code, Cursor, Windsurf, and any MCP-compatible client.


What it does

  • Session crash recovery — checkpoint your work, pick up where you left off
  • Decision logging — record why you chose X over Y, search it later
  • Dead end tracking — never repeat the same debugging mistake twice
  • User profile — AI remembers your name, preferences, and projects
  • Session journal — capture the journey, not just the task
  • Full context recall — bootstrap a new session with everything in one call
  • Data management — prune old entries, export all data, view stats

Quick start

Claude Code

bash
claude mcp add session-forge -- npx session-forge

Cursor / Windsurf

Add to your MCP settings:

json
{  "mcpServers": {    "session-forge": {      "command": "npx",      "args": ["-y", "session-forge"]    }  }}

That's it. No database, no Docker, no config files.


The 15 tools

Sessions

ToolDescriptionRequired
session_checkpointSave work-in-progress state for crash recoverytask, intent, next_steps
session_restoreCheck for interrupted work from a previous session—
session_completeArchive session and mark complete—

Profile

ToolDescriptionRequired
profile_getGet the current user profile—
profile_updateUpdate name, preferences, projects, or notes—

Journal

ToolDescriptionRequired
journal_entryRecord session summary with breakthroughs and frustrationssummary
journal_recallRetrieve recent session journals—

Decisions

ToolDescriptionRequired
decision_recordLog a significant decision with alternatives and reasoningchoice, reasoning
decision_searchSearch past decisions by keyword (supports limit param)query

Dead Ends

ToolDescriptionRequired
dead_end_recordLog a failed approach and the lesson learnedattempted, why_failed
dead_end_searchSearch past dead ends to avoid repeating mistakes (supports limit param)query

Context

ToolDescriptionRequired
full_context_recallGet everything — profile, journals, decisions, dead ends. Supports optional project filter.—

Data Management

ToolDescriptionRequired
data_managePrune old entries, export all data, clear stores, or view statsaction
data_listBrowse stored entries with numbered summaries. Supports search filter.store
data_deleteDelete a specific entry by index from data_list outputstore, entry_index

data_manage actions:

  • stats — entry counts and schema versions for all stores
  • export — dump all data as JSON
  • prune — remove entries older than N days (default: 90)
  • clear — wipe a specific store (journal, decisions, dead_ends, profile, or all)

data_list + data_delete workflow:

  1. data_list with store="decisions" — see numbered list of all decisions
  2. data_list with store="decisions", query="minecraft" — filter by keyword
  3. data_delete with store="decisions", entry_index=3 — remove entry #3 from the list

Why session-forge?

session-forgeBasic memory MCPsEnterprise tools
Setupnpx session-forgeVariesDocker + databases
Dead end trackingYesNoNo
Decision loggingYesNoSome
Session crash recoveryYesSomeYes
Data managementYesNoSome
User profileYesSomeNo
Dependencies2 (SDK + zod)Varies5-10+
InfrastructureZero (plain JSON)SQLite/ONNX/Vector DBPostgreSQL + Redis
Tools15 focused4-937+

Configuration

Environment variables

VariableDefaultDescription
SESSION_FORGE_DIR~/.session-forge or %APPDATA%\session-forgeOverride data storage location
SESSION_FORGE_STALE_HOURS24Hours before an inactive session is auto-archived

Storage

All data is stored locally as plain JSON files:

PlatformLocation
Linux / macOS~/.session-forge/
Windows%APPDATA%\session-forge\

Override with the SESSION_FORGE_DIR environment variable:

bash
SESSION_FORGE_DIR=/custom/path npx session-forge

Files:

~/.session-forge/  profile.json        # User preferences and projects  journal.json        # Session summaries (last 100)  decisions.json      # Decision log (last 200)  dead-ends.json      # Failed approaches (last 100)  sessions/    active.json       # Current checkpoint    history/          # Archived sessions

Data files include a schema_version field for future migration support.


CLAUDE.md template

Add this to your project's CLAUDE.md to teach the AI when to call each tool:

markdown
## Session Flow
### Fresh session1. Call `full_context_recall` — get profile, journals, decisions, dead ends2. Call `session_restore` — check for interrupted work
### During work- `decision_record` — when making a significant architectural choice- `dead_end_record` — when something fails and we learn why- `session_checkpoint` — every 10-15 tool calls during long sessions
### Session end1. Call `journal_entry` — record what happened2. Call `session_complete` — archive the checkpoint

Changelog

v2.0.1

  • Added disclaimer: session-forge is NOT affiliated with SessionForge LLC (sessionforge.dev)

v2.0.0

  • Knowledge Graph — link decisions and dead ends together with related_dead_ends and led_to_decision fields
  • Scored Search — fuzzy matching, tag filtering, AND/OR search modes, relevance scoring (replaces basic string matching)
  • Usage Stats — tracks dead ends avoided, searches performed, sessions recovered
  • MEMORY.md Sync — full_context_recall can read your MEMORY.md and suggest decisions/dead ends that should be saved to memory
  • Enhanced Checkpoints — now tracks errors_encountered, key_findings, decisions_made, dead_ends_hit
  • New storage modules: links.js, search.js, stats.js, migrate.js
  • Schema bumped to v2

v1.2.0

  • Added data_list tool — browse stored entries with numbered summaries, optional search filter
  • Added data_delete tool — surgically remove individual entries by index
  • Users can now see exactly what's stored and delete anything they want

v1.1.0

  • Added data_manage tool (stats, export, prune by age, clear per-store)
  • Added project filter to full_context_recall
  • Added limit param to decision_search and dead_end_search
  • Added error logging to JSON reads (was silently swallowing parse failures)
  • Added configurable stale session timeout via SESSION_FORGE_STALE_HOURS
  • Added schema_version to data files for future migration support
  • Fixed version mismatch between code and package.json

v1.0.2

  • Initial public release

License

MIT


Important Notice

session-forge is NOT affiliated with SessionForge LLC (sessionforge.dev).

session-forge was first published on npm on February 7, 2026 — before SessionForge LLC appeared. We have no connection to their product or company.

Here's why this matters: session-forge stores all your data locally on your machine as plain JSON files. Nothing leaves your computer. No accounts, no servers, no third parties.

Any service asking you to route your AI session data, coding habits, and terminal access through their servers should make you ask: who has access to that data, and what are they doing with it?

Your workflow, your decisions, your code — that's yours. It should stay on your machine, under your control. That's how session-forge was built and that's how it will stay.


Built by Jacob Terrell

Source: README.md at commit 704ada9

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v2.0.3LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts