Project Memory

io.github.Dankaro-projects由 GitHub 账号 Dankaro-projects 发布v0.5.0b9更新于 Oct 24, 2026

Local decisions, evidence, outcomes and reviewed lessons with bounded retrieval and an HTML viewer.

发布方自己的服务:Memory.fit

概览

AI 生成的概览

把单个项目的计划、证据、决策、结果与已采纳的经验保存在本地 SQLite 数据库中,助手通过 MCP 工具读写这些记录。

可以做什么
  • 记录与读取项目记忆:带目标、完成标准、允许路径和下一步行动的工作项,以及含证据、备选方案和结果的决策
  • 按产品、咨询或自动化模板采集启动问答与初始文档,并提出需求供你审批
  • 跟踪经验、守卫规则、范围放宽、依赖关系,以及从导入、清单和导出的 n8n 工作流静态推导出的架构
  • 在只读的本地控制面板或离线 HTML 快照中查看全部内容,并把记录导出为 Markdown 笔记供 Obsidian 使用
  • 通过已安装的 Codex 或 Claude Code CLI 运行代理检查与委派工作项,并由另一个宿主审查改动差异
适用场景
适合希望助手在单个项目的多次会话之间延续上下文,并让决策、证据和经验可追溯的场景,无论是软件产品、咨询项目还是 n8n 工作流自动化。
运行要求
需要 Python 3.11 或更高版本以及 uv,通过 PyPI 上的 uvx 或 uv tool install 安装。安装程序会把 MCP 服务器和生命周期钩子接入 Codex、Claude Code 或其他本地 stdio 客户端。代理检查与委派工作需要已安装的 Codex 或 Claude Code CLI,并消耗该账户的用量。无需账号、托管数据库或遥测。
安装前请注意
使用 --trust 安装会在客户端中直接批准项目集成,生命周期钩子会阻止工作项允许路径之外的编辑。委派运行会消耗你的 Codex 或 Claude Code 账户用量。范围守卫无法识别 shell 重定向等间接写入,代理结论只是解读而非证明。Obsidian 导出是单向的:在该文件夹内编辑的笔记会在下次运行时被覆盖。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Project Memory,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

Project Memory

Project Memory keeps the plan, the evidence, the decisions, the outcomes and the accepted lessons of one project in a local SQLite database. Your assistant reads and writes those records through three MCP tools. You follow the same records in a local control panel, which is read only, and you decide in the chat what is approved, accepted and merged.

It works for a software product, a consulting engagement and a workflow automation built in n8n. Work items can be code, documents, deliverables or exported workflows.

Public beta. Python 3.11 or newer is required. The runtime uses only the Python standard library. There is no telemetry, no hosted database and no account. Agent checks and delegated work run through the Codex or Claude Code CLI that you already have installed, and they consume that account's usage.

Install

Install uv, then run this inside the project you want to remember:

sh
uvx [email protected] setup --client codex --trust

For Claude Code, replace --client codex with --client claude. Setup preserves existing records and settings, connects the MCP server and the lifecycle hooks, and opens the control panel. --trust approves the project integration in that client; omit it to approve the connection yourself. Start a new assistant session afterwards. Add --no-view for a headless installation.

For a permanent command:

sh
uv tool install project-memory-mcp==0.6.0b16project-memory doctorproject-memory view

To install the published wheel directly from GitHub instead of PyPI:

sh
uvx --from https://github.com/Dankaro-projects/project-memory/releases/download/v0.6.0b16/project_memory_mcp-0.6.0b16-py3-none-any.whl project-memory setup --client claude --trust

Other local MCP clients use setup --client mcp and the stdio server. Setup and lifecycle covers client configuration, the plugins, upgrades, backups and removal.

Start a project

A new project starts from one of three templates:

sh
project-memory init ~/projects/pricing-tool --template product --client codex
TemplateForStarter documentsPhases
productA software productdocs/brief.md, docs/research.md, docs/architecture.md, docs/stories.mdGoals and brief, Research, Requirements approval, Architecture, User stories and acceptance, Build, Review and release
engagementA consulting engagementengagement/brief.md, engagement/stakeholders.md, engagement/research.md, engagement/findings.md, deliverables/README.mdScope and brief, Stakeholders and hypotheses, Research and evidence, Analysis and synthesis, Recommendations and deliverables, Client review, Handover
automationA workflow automation, with n8n exports in workflows/automation/process.md, automation/systems.md, automation/solution-design.md, workflows/README.mdProcess discovery, Systems and credentials inventory, Solution design, Workflow stories and test data, Build workflows, Test with sample data, Deployment and handover

init creates the folder, initialises git unless you pass --no-git, writes any starter document that does not exist yet, connects the clients you name and records each phase as a work item. Running it again creates nothing a second time and never overwrites a document you have edited.

The kickoff conversation

Each template carries seven kickoff questions. Your assistant reads them with memory_get kickoff and asks you, for example what problem the product solves, who the stakeholders are, or which systems the process uses. It records your answers with memory_write answer_kickoff, fills the starter documents from those answers and proposes requirements. Only you approve the requirements baseline. Until that approval exists, the control panel opens on a kickoff checklist that shows the open questions, the research still needed, the starter documents that are still empty and the phases.

The everyday loop

Tell the assistant the result you want, the constraints and what would count as complete. It then records a work item with its objective, its completion criterion, the next action and the files it may change, continues from that record in later sessions, and records each decision with its evidence, alternatives, uncertainty and expected consequence. After acting, it records what actually happened. A failure stays visible after a later success.

You approve requirements, accept or reject proposed lessons, widen the allowed paths, and decide what is merged. Capturing a document does not approve its contents, and a plan does not authorise work.

The control panel

Run project-memory view in the project, or ask the assistant to open Project Memory. The panel reads the same database and refreshes while it is open. It is laid out as a Notion workspace: a sidebar of views, database tables with views, filters, sorting and grouping, and each item opening as a page beside the list, in a light or a dark theme.

ViewContent
NowOne sentence on the project position, the kickoff checklist, and the work in progress, paused, ready and done with the next step of each, and recent decisions
PlanThe hierarchy of phases, epics, stories, research items, deliverables and workflows as an outline with nested sub-items and progress, and a gallery of the phases
WorkA table and a board of work items, and a page for each with the plan, the allowed paths, dependencies, agent runs, lineage and history
ArchitectureComponents from source code, exported n8n workflows and authored items such as systems, stakeholders and deliverables
DependenciesThe work dependency graph with blocked chains, and the declared package table
DecisionsDecisions with their outcomes, and the lineage from requirement to outcome
LearningAccepted guards and their recurrences, lessons awaiting your acceptance, failures without a lesson and scope widenings
AgentsHost availability, agent checks, delegated runs, and the merge or discard decision
RecordsSearch across every record kind, captured documents and host receipts
RequirementsThe current requirements, their version and their approval evidence

project-memory view --output review.html --include-bodies --no-open writes an offline snapshot instead. See the control panel guide.

Read the records in Obsidian

project-memory export --obsidian <vault> writes the records as a folder of Markdown notes with frontmatter and wikilinks, which Obsidian opens as a vault. A work item is a folder holding its own decisions, outcomes and plans, and sources, lessons and requirement revisions sit in shared folders beside it. The graph, the backlinks and the search of Obsidian then work on the project history, while the panel stays the place where you decide.

The export runs in one direction. The database is the source of truth, the export owns one folder inside the vault and touches nothing outside it, and a note edited inside that folder is lost on the next run. After a session that wrote records, the session stop hook refreshes the vault in a separate process.

Agent checks and delegated work

When Codex or Claude Code is configured, Project Memory can start short, separate host processes. An agent check reads the records and the project and reports on an outcome, on the current intent or on an unconfirmed execution. Delegated work runs a work item in its own git worktree, limited to the paths in its plan, and a second host reviews the resulting diff before you merge it. If one host reports a usage limit or a rate limit, the run reroutes once to the other configured host.

These runs use your installed Codex or Claude Code account and consume that account's usage. A reviewer cannot edit plans, accept lessons or merge anything. See agent checks and delegated work.

Guards and scope

An accepted lesson with a trigger becomes a guard. When a guard matches the paths or the wording of a work item, a decision must list that lesson in lessons_considered with an explicit yes or no and a reason, otherwise the decision is rejected. When a work item has allowed paths, the lifecycle hooks block an edit outside them, record the block and ask you to extend the scope in the chat. The record fields document defines the pattern rules.

Honest boundaries

  • A recorded plan is not permission. Autonomy and scope are advisory records; your host's own permissions and your current instructions decide what may run.
  • The scope guard reads the file paths of edit tools, patch markers and the targets of MCP write tools. It does not parse shell redirection or other indirect writes inside shell commands.
  • Hooks record events mechanically. Only the assistant can record what those events meant, and a connected panel does not prove that the recording is complete.
  • An agent verdict is an interpretation. A passing check does not prove that the work is correct, and an empty findings list is not proof either.
  • Architecture is read statically from imports, manifests and exported workflow files. Dynamic loading is not detected.
  • Bounded retrieval limits the characters a call returns. It cannot control the complete model input of the host.
  • Daily productivity, token usage, correction rates and human task time are not measured, and this project makes no claim about them. Testing and limitations states what is verified and what is not.

Documentation

Packages are published on PyPI and in GitHub Releases.

来源:README.md,提交 247860c

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.5.0b9最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

其他 Memory 集成