# Update Project

> Merge Chronicle session records into a durable project ledger while preserving evidence, ownership, decisions, and conflicts. Use when organizing captured sessions by project, creating or refreshing a Chronicle PROJECT.md, consolidating a project timeline, recording technical decisions, or separating individual contribution from team work.

- Skill: `r-jelly/update-project` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add r-jelly/update-project`
- Raw SKILL.md: https://api.skillmd.com/api/skills/r-jelly/update-project/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: r-jelly (https://skillmd.com/u/r-jelly)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/r-jelly/update-project

---


# Update Project

Maintain one local project ledger from many session records without erasing
history or overstating contribution.

## Resolve Inputs

Let `<plugin-root>` be `${CLAUDE_PLUGIN_ROOT}` when Claude Code supplies it;
otherwise use the directory two levels above this `SKILL.md`. Resolve the vault
with Chronicle's CLI and use:

- `<plugin-root>/docs/DATA_MODEL.ko.md` for data and review rules;
- `<plugin-root>/templates/project/` for ledger structure;
- `chronicle/projects/<project-id>/` for project data;
- `chronicle/sessions/` and `chronicle/inbox/unclassified/` for source records.

If the project is not explicit, run `resolve-project`. Never create or merge a
new project solely from a suggested ID. Ask the user to confirm the project
name and whether it is new.

## Update Workflow

1. Read the existing project files before editing them.
2. Select source sessions that reference the project and have not already been
   incorporated. Use source session IDs for idempotency.
3. If creating a confirmed project, initialize:
   - `PROJECT.md`
   - `TIMELINE.md`
   - `OWNERSHIP.md`
   - `DECISIONS.md`
   - `EVIDENCE.md`
   - `STAR.md`
   - `QUIZ_HISTORY.md`
   Use `[]` for unknown `source_paths`, `git_remotes`, or `aliases`; do not add
   empty strings merely to fill the template.
4. Merge each fact into the narrowest file:
   - purpose, problem, scope, architecture, constraints, status, outcomes:
     `PROJECT.md`;
   - chronological session summaries: `TIMELINE.md`;
   - direct and shared contribution: `OWNERSHIP.md`;
   - alternatives, rationale, trade-offs, and reversals: `DECISIONS.md`;
   - claim state and supporting references: `EVIDENCE.md`.
5. Preserve manually written material and unknown sections. Prefer appending or
   targeted edits over regenerating whole files.
6. Do not duplicate a timeline or decision entry that already cites the same
   session and subject.
7. Retain `[confirmed]`, `[inferred]`, and `[needs-evidence]` labels. Upgrade a
   label only when new direct evidence or user confirmation supports it.
8. Separate `Directly Owned` from `Shared Responsibility`. Do not infer
   ownership from the fact that the session discussed or edited an area.
9. When new information conflicts with the ledger, preserve both accounts and
   add a visible `Conflict — needs review` note with their evidence. Do not pick
   a winner silently.
10. When the user confirms an unclassified record's project, update its
    `project` field and move it from `inbox/unclassified/` to the matching
    `sessions/YYYY/MM/` directory. Preserve `captured` status and validate it.
11. Update `updated_at`, then validate `PROJECT.md` with Chronicle's CLI.

## Hybrid Review

After merging, ask only about high-impact uncertainty: ownership, numerical
results, decision rationale, project identity, or a conflict. Ask one concise
question at a time.

When the user resolves every critical item for a source session, change that
session from `captured` to `reviewed` and add `user-confirmed:<date>` where
appropriate. Leave unresolved sessions as `captured`; project timelines may
still cite them with their status.

## Report

Summarize files changed, sessions incorporated, duplicate entries skipped,
conflicts found, and critical review questions left. Never describe inferred
outcomes as verified.

