Incremental Project Analysis logo

Incremental Project Analysis

Organization
devcodex-labs
incremental-project-analysis

增量项目分析 Owner — 知识快照、内容 digest、分析视角覆盖、changed→impact 选择性失效、智能分批可见交付、全局优先级综合、分析精度合同与双层验证;大型/逐文件分析禁止只缓存自然语言总结。

Overview

Publisherdevcodex-labs
Repositorydevcodex
Skill nameincremental-project-analysis
Stars
433
Forks
44
Bundled files
2
LicenseAGPL-3.0
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 2 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by devcodex-labs on GitHub. Read the source before you install it.

Installation

Install the Incremental Project Analysis AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/devcodex-labs/devcodex/tree/main/content/skills/incremental-project-analysis
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/devcodex-labs/devcodex.git /tmp/devcodex
mkdir -p .claude/skills
cp -r /tmp/devcodex/content/skills/incremental-project-analysis .claude/skills/incremental-project-analysis
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Incremental Project Analysis in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Incremental Project Analysis on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Incremental Project Analysis is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Incremental Project Analysis

职责

承接大库 / 逐文件 / 多会话项目分析的可复用认知层:把稳定事实、依赖图、分析视角覆盖与结论新鲜度做成可校验快照,支持增量重算、分批交付与全局综合。
不替代 skill-gap-analysis 的规模分批扫描本身;不替代 analyze-default 的只读多轮分析主流程。本 Skill 提供快照、精度、批次交付与验证状态机。

何时触发

  • 用户要求完整深度 / 逐文件 / 多批项目分析,且语料 non-small。
  • 用户要求「后续只分析增量 / 不要每轮重读全库」。
  • analyze-default / skill-gap-analysis 在 ScaleDecision 为 batched / sampled+deep-read 时必须调用本 Skill 的交付与精度门禁。
  • 用户要求最终确认清单 / 可吸纳包时,叠加 FindingThemeCoverageMatrix(与 report ABS-17 一致)。

与相邻 Skill 分界

Skill本 Skill 管对方管
skill-gap-analysis知识快照、全局 backlog、精度与验证阶段规模路由、缺口 vs Owner 矩阵、corpus inventory
analyze-default快照复用、BatchProgress、GlobalBacklog、双产物三轮收敛、PCV、只读边界、治理 intake
memory快照路径链接;禁止把快照正文写入 SUMMARY会话日记、handoff、TimingCard
reportTheme+Detail 链接、CoverageMatrix 字段报告路径与五项验证列

核心产物

产物说明
ProjectKnowledgeSnapshotV2可持久化 accepted 项目知识;含 repo/root、Merkle、环境绑定、policy/schema 版本
FileKnowledgeRecordV2每文件 content identity、coverageLevel、结构观察与已接受声明
SemanticClaimV1类型化声明;绑定 sourceRange/rangeDigest、authority、lens、policy 与依赖
ProjectKnowledgeBindingV1绑定唯一 repo/root、inventory Merkle、配置、解析器、测试路线与 Profile 身份
ImpactGraphV1依赖 / 消费者 / 配置 / 契约边
AnalysisLensRecordV1分析视角覆盖(lens / questionFingerprint)
IncrementalAnalysisPlanV2本轮只读集合:binding + changed + impact + lens-gap + deterministic sample
IncrementalAnalysisReceiptV2复用/重算/失效分类、抽样复证与 accepted pointer 结果
BatchProgressCard每 accepted 批用户可见交付
GlobalOptimizationBacklogV1全批后唯一高/中/低优先级清单
ValidationPlanV1 / BatchValidationResultV1 / GlobalValidationResultV1双层验证

落盘建议:<active-root>/reports/analysis/<agent>/YYYYMMDD/deep/ 或任务目录 artifacts/knowledge-snapshot/;禁止写入 Agent SUMMARY 正文。

源仓 runtime Owner 为 scripts/lib/project-knowledge-store.js,内部 CLI 为 scripts/project-analysis-state.js status|plan|observe|bootstrap|accept。accepted runtime 固定落到 <active-root>/.runtime-state/project-knowledge/v2/<repoId>/snapshot.json;status、plan、observe 必须零写入,bootstrap 只生成可复证的 content-structured 首轮基线,只有 BatchValidationResultV1=pass 且 sample oracle=pass 的 bootstrap/accept 才可在所有批次内存验收后推进一次 runtime pointer 并写任务证据。

V1 只读兼容:v1/<repoId>/snapshot.json 仅用于返回 compatibility-v1 + migrationRequired 导航信息,禁止作为 V2 reuse/accept 基线;下一次 bootstrap 必须走 full-required 并生成独立 V2 accepted snapshot。禁止迁移时原地改写 V1。

当 execution optimization 为 full-only,或 project-knowledge-reuse 的 ExecutionOptimizationFeatureDecisionV1 为 off / shadow / rolled-back / sunset,或 state/snapshot schema/identity 无效、oracle 失败时,plan 必须返回 full-project-analysis,不得复用 snapshot records;status 同时公开 executionOptimizationMode、feature decision 与 reuseAllowed=false。kill switch 只关闭加速,不跳过 inventory、智能分批、逐批验证、最终全局验证或高/中/低 backlog。


Gate 索引(执行正文)

ProjectKnowledgeSnapshotGate(ABS-01)

  1. 首次分析冻结:repo/base tree(或等价)、排除边界、文件 contentDigest、coverageLevel、依赖边、policyVersion。
  2. 首次无快照时执行 deterministic observe → batch validate → bootstrap;只保存从当前字节可重建的结构声明,不得把 bootstrap 宣称为人工深读。
  3. 稳定事实层(symbols、imports、配置锚点)按 content identity + rangeDigest 复用;职责、风险、建议只能以 agent-semantic authority 单独接受。
  4. 判断层绑定 analysisLens / dependsOn / policyVersion;代码未变但目标变时只补 lens-gap。
  5. ProjectKnowledgeBindingV1 的 repo/root、配置、解析器、测试路线或 Profile 身份错配时强制 full-required;inventory 内容差异走 delta/impact,不因正常小变化误判为环境错配。
  6. 禁止仅保存 Markdown 自然语言总结当作可复用知识。

生产 CLI 必须从当前 bounded inventory 的真实字节构建 ImpactGraphV1:首期至少解析 JS/TS 静态相对 require/import/export/dynamic import literal 与 Markdown 本地链接,记录 typed edge、source、evidenceStrength、覆盖率、未解析引用和 unknownConsumerPaths。图必须带 builderVersion;旧/未知 builder 首次迁移 full-required,之后普通图拓扑变化使用当前图重新计算影响闭包,不得仅因 graph identity 改变就无条件全文重读。

SemanticClaimBoundaryGate

  1. 每条可复用声明必须是 SemanticClaimV1,至少包含 type / statement / authority / sourceRange / rangeIdentity / sourceContentDigest / lensId / policyVersion / dependsOn / claimDigest / status。
  2. inventory-only 只能声明文件存在与内容身份;content-structured 只能声明文本中直接可解析的 heading、symbol、import、config/test 结构;只有 agent-semantic 可声明职责、风险或建议。
  3. rangeDigest 必须从当前文件精确行范围重算;path、content、range、lens 或 claim digest 任一不一致即拒绝该批,禁止“修补后继续复用”。
  4. accepted snapshot 只持久化 status=accepted 声明;candidate/provisional/invalid 只能留在当轮候选输出,不得推进 runtime pointer。

SelectiveInvalidationGate

  1. 变化集优先 git diff --name-status,并用当前 digest 覆盖未提交/未跟踪/rename。
  2. 直接变化扩展到依赖、消费者、公共契约、配置、生成链、测试与文档闭包。
  3. 状态:fresh / stale / coverage-gap / incompatible / full-required。
  4. 强制升级:快照损坏、base 不可达、schema/builder 不兼容、高风险变更、闭包过大、抽样复证失败;动态依赖消费者自身发生变化时 full-required,其他文件变化时必须把全部 unknown consumer 注入 affected closure 并显式重读,禁止静默复用。

mtime/size 只能做候选加速;fresh 必须由 current bytes content identity 证明。rename 必须同时写旧 path tombstone 与新 path identity,delete 写 tombstone;配置变化保守扩到受影响全域。ImpactGraph 每条边必须含 type/source/evidenceStrength,图覆盖不足时不得声称 selective complete;unknownConsumerPaths 与 builder/stats 必须进入 graph identity。graph identity 变化会使未完成旧 plan 失效,但只在 builder 迁移或其他升级条件命中时触发全文;正常拓扑变化应以新图计算 changed/impact closure。

AdaptiveBatchDeliveryGate(ABS-02)

  1. 按模块 / namespace / 消费者 / 风险分批;每批有 budget 与 checkpoint。
  2. 每个 accepted 批次必须立即输出并持久化:BatchProgressCard + 本批发现 + checkpoint + snapshot delta。
  3. 禁止等待全量完成才首次交付用户可见结果。
  4. 恢复只从最后一个 accepted 批次继续;invalid/blocked 不得推进指针。

复用抽样必须按 contentId/path 稳定排序选择 5%,最少 3、最多 20,不足 3 全抽。任一 content/fact mismatch 使本批 invalid + full-required;历史 runtime 只标 stale,不自动删除。

observe 与 bootstrap 的候选选择、结构提取、claimId、rangeDigest、Merkle root 和 sample 必须确定性;同一 repo/root、字节、环境身份与 lens 重跑必须得到相同 identity。持久化顺序为“先验证全部身份与任务证据,最后单次原子替换 runtime pointer”;任务证据写入失败时 pointer 不得推进。

GlobalPrioritySynthesisGate(ABS-03)

  1. 全部计划批次 accepted 且 CRS/PCV 收敛后,跨批去重合并,输出唯一 GlobalOptimizationBacklogV1(高/中/低 + 推荐顺序)。
  2. 未完成 / invalid / blocked → 只能 partial/provisional,禁止 final/completed 宣称。
  3. findingId 与 priority 分字段(ABS-05),禁止用 P1 编号冒充 P0 优先级。

AnalysisPrecisionContractGate(ABS-04)

  1. 开批前冻结 depthTier:deep | standard | light。
  2. 每文件笔记必有 evidenceStrength:agent-semantic | content-structured | inventory-only。
  3. 交付必须 ThemePriorityBacklog + FindingDetailLedger(去噪 high/medium;默认排除纯归档 low)。
  4. claimBoundary:inventory/content-structured 不得宣称「人工长文精读」;主题 N 条 不得宣称「仅有 N 个问题」。

DualLayerValidationGate

生命周期:

text
plan → execute → batch validate → accept/deliver → synthesize → global validate → final
规则说明
执行前冻结 ValidationPlanV1(风险、声明、消费者、证据、升级路线)
批次仅 BatchValidationResult=pass 可 accepted / 写 checkpoint / snapshot delta
全局仅 GlobalValidationResult=pass 可 final backlog / completed
失败fail/inconclusive 隔离候选输出;按 targeted→related→full 扩大或重做;全局失败保持 provisional

执行清单(最小)

  1. 确认 ScaleDecision(委托 skill-gap-analysis)。
  2. 加载 V2 snapshot;若仅有 V1,标记只读兼容并规划 full-required bootstrap。
  3. 冻结 depthTier + lens + ValidationPlan。
  4. 构建 ProjectKnowledgeBindingV1,计算 changed / impact / lens-gap → IncrementalAnalysisPlanV2。
  5. 分批执行:observe/语义补充 → claim range 复证 → batch validate → accepted ProgressCard;首次基线用 bootstrap,后续按差量 accept。
  6. 全批后 CRS/PCV → GlobalBacklog → global validate。
  7. 报告双产物 + CoverageMatrix(确认清单场景)+ TimingCard(长任务)。

反模式

  • 每轮全文重读却不更新 digest / 失效图。
  • 只交付主题 8 条,隐瞒 high/medium 明细。
  • 把 waiting-user 时间算进「分析执行慢」且无 TimingCard。
  • 在 SUMMARY 粘贴快照正文。
  • 未 batch validate 就写 accepted checkpoint。
  • 把 V1 snapshot 静默升级、继续复用或写回原路径。
  • 把结构提取结果描述成“逐文件人工深读完成”或“问题只有 N 个”。

验证路线

正负向至少覆盖:首轮 observe/bootstrap 确定性;单文件变更只重算闭包;配置变更使未改源码失效;新 lens 触发 coverage-gap;rename/tombstone;repo/root/config/parser/test/Profile/content/range identity 错配;V1 只读兼容;5% sample 确定性;candidate/provisional 不持久化;accepted 缺 ProgressCard 失败;global 未完成不得 final;findingId/priority 混用失败;claim authority 越界失败。

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Incremental Project Analysis AI skill do?

增量项目分析 Owner — 知识快照、内容 digest、分析视角覆盖、changed→impact 选择性失效、智能分批可见交付、全局优先级综合、分析精度合同与双层验证;大型/逐文件分析禁止只缓存自然语言总结。

Why use Incremental Project Analysis on TypingMind?

Because you install it once and use it with any model. Incremental Project Analysis is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Incremental Project Analysis in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/devcodex-labs/devcodex/tree/main/content/skills/incremental-project-analysis. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Incremental Project Analysis?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Incremental Project Analysis?

As many as you like. As long as a model supports skills, you can use Incremental Project Analysis with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Incremental Project Analysis AI skill free?

Yes. It is published on GitHub by devcodex-labs under the AGPL-3.0 license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇