Skip to content

Repository files navigation

PKR

中文说明 | English README

PKR(Project Kernel Runtime,最初称为 Project Knowledge Runtime)是面向 AI 原生软件项目的开放框架与本地项目 Runtime。

PKR 不负责替人或替 Agent 编写代码。它为人、Agent、工具和工作流提供一套 共享的项目规则,以及一个权威的项目状态。Git 仓库保存项目产物,但仓库本身 不是 Runtime 的权威状态。

核心定位

  • Runtime 权威:SQLite Runtime 保存项目状态、权限、策略、事件、证据和 恢复语义;JSON 投影和看板都可以重建,不能反向修改权威状态。
  • 受治理的工作流:Steward 准备请求和提案,LPS 负责派发与回收,Agent 在受限 Workspace 中工作;任何参与者都不能把自己的工作报告直接标记为已验收。
  • 独立验证Done 表示声明的 Verification 通过,而不只是进程结束或 Agent 报告成功。
  • 边界清晰:PKR 不是模型、云端服务、OS 沙箱、凭据保险库,也不保证受信 主机进程不会损坏本机。

工作方式

flowchart LR
    I[人的意图] --> R[PKR Runtime]
    R <--> DB[SQLite 权威状态]
    R --> T[受治理的 Goal 和 Task]
    T --> W[受限 Workspace]
    W --> A[Agent 或工具]
    A --> WR[非权威工作报告]
    WR --> R
    W --> V[独立 Repository Verification]
    V --> R
    R --> O[验收、阻塞或恢复]
Loading

Runtime 记录项目事实,参与者领取有边界的工作并提交实际 Git 证据,独立的 Repository Verification 决定是否具备验收证据。可选的 Supervisor 只负责驱动 受治理的协调动作,不替代 Provider 选择、Owner 审批或独立验证。

5 分钟开始

当前支持从源码运行。环境要求:Node.js 24.x、Git;运行规范验证还需要 Python 3.11。

npm ci
npm run build

$Pkr = (Resolve-Path .\dist\cli.js).Path
$Target = Join-Path $env:TEMP "pkr-quickstart"
New-Item -ItemType Directory -Force $Target | Out-Null
Set-Location $Target
git init -b main
Set-Content .gitignore ".pkr/"
Set-Content README.md "# PKR quickstart target"
git add .
git -c user.name="PKR Quickstart" -c user.email="pkr@example.invalid" commit -m baseline

node $Pkr init --project $Target --name quickstart `
  --outcome "Complete one governed local task"
node $Pkr setup --project $Target --quickstart
node $Pkr doctor --project $Target
node $Pkr run --project $Target --request "Produce one quickstart result"

init 为已有 Git 仓库创建本地 SQLite authority;run 记录受治理的 Goal/Task 并返回可领取的工作卡;status 读取并展示持久化的 Runtime 状态。 setup --quickstart 只复制演示用 Verification 文件,不会启用可选 Adapter。

完整的 Agent-native 流程是:

  1. Agent 注册并领取 Task;
  2. Agent 直接编辑目标仓库;
  3. lps submit 提交工作报告和 Git 前后证据;
  4. 独立执行 verify,由 Runtime 决定是否形成验收证据。

示例命令:

node $Pkr lps claim --project $Target `
  --task <task-id> --agent <agent-id> --session-locator "agent-host://current-session"
node $Pkr lps submit --project $Target `
  --assignment <assignment-id> --agent <agent-id> --outcome partial
node $Pkr verify --project $Target `
  --task <task-id> --assignment <assignment-id>
node $Pkr status --project $Target

工作报告是非权威记录,即使协议结果为 verified,也不能替代独立 Verification 或 Runtime acceptance。

问卷与可视化 Dashboard

项目 intake 缺少必要信息时,会生成只读的 QuestionSheet。问卷答案可以 采用推荐值,但推荐值不等于 Owner approval;涉及受保护决策的跳过或默认推荐 仍然保持阻塞。

node $Pkr project intake --request "Build a playable editor"
node $Pkr project intake --request "Build a playable editor" `
  --question-format chat
node $Pkr project intake --request "Build a playable editor" `
  --accept-recommended

问卷也可以渲染为本地单文件 HTML,供人工查看和导出回答:

node $Pkr visualize questions --project $Target `
  --sheet-file intake-question-sheet.json --output reports\intake-questions.html

针对 Decision、Task、Verification、Clarification 和 Runtime 事件,可以生成 只读的本地 Wiki-style dashboard:

node $Pkr visualize dashboard --project $Target `
  --output reports\decision-dashboard.html --max-events 500

两个可视化命令都要求输出路径是目标仓库内的相对 .html 文件,不写入 SQLite, 不创建事件,不改变验收状态,也不访问网络。详细输入、输出和安全边界见 可视化操作指南

验证与边界

运行完整源码验证:

npm run verify
npm run check:candidate

npm run verify 覆盖规范生成、Schema 校验、TypeScript 构建、Runtime 回归和 敏感数据检查。npm run check:candidate 额外检查 public tree、Markdown 链接、 打包内容、版本和仓库生命周期。

PKR 的权威状态位于目标项目的 .pkr/runtime.sqlite.pkr/projections/ 下的 JSON 是可检查的派生投影,不能作为 Runtime mutation input。公开源码发布与 npm 发布是两条独立流程;当前包保持 private: true,没有声明 npm 发布或 托管部署能力。

当前版本

v1.2.0 是当前稳定的 GitHub 源码版本,包含受治理的 Steward intake、 Agent-native LPS、独立 Repository Verification、Runtime acceptance、恢复、 Memory、Workflow、Project Profile、Package 生命周期,以及可选的 Provider-neutral Supervisor。

实验性功能不改变 v1 的权威、审批、验证和恢复边界。完整规范、Schema、发布 检查和安全策略见:

仓库结构

  • src/:TypeScript Runtime、CLI、Adapter 和测试;
  • specs/:版本化规范与 RFC;
  • schemas/:机器可读的 JSON Schema;
  • conformance/:规范验证器和正反例;
  • docs/:架构决策、操作指南、集成说明和发布策略;
  • examples/:可复现示例;
  • dist/:可重新生成的 TypeScript 输出,不纳入 Git。

许可证

源码使用 Apache-2.0 许可证。安全问题请按 SECURITY.md 中的私下报告流程提交。

About

AI-native project framework and local Runtime for governed state, independent verification, recovery, and audit.

Topics

Resources

Contributing

Security policy

Stars

4 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages