Log in

Create Memo Candidates from Past Sessions with paput-harvest

paput-harvest harvests reusable knowledge from past Claude / Codex sessions into pending candidates. It is safe to run repeatedly: it skips already-processed sessions and reviews only new ones, so the first run surveys your whole history and later runs pick up only what is new. The AI client reads local session files directly, and PaPut MCP stores processed-session state and pending candidates through the PaPut API.

This feature requires a local-file-capable AI client such as Claude Code or Codex. PaPut MCP itself does not read local session files.

What you can do

  • Check which Claude / Codex sessions were already processed
  • Let the AI client inspect local session files only when needed
  • Add only reusable knowledge to pending candidates
  • Mark reviewed sessions as processed even when no candidates are added

Usage

In Claude, call this skill:

/paput-harvest

In clients such as Codex, ask in natural language:

Use paput-harvest to review past sessions and create reusable knowledge candidates.

What it does internally

The usual flow is:

  1. Use paput_list_processed_sessions to get sessions already reviewed for knowledge capture
  2. The AI client finds local session files, such as ~/.claude/projects/**/*.jsonl and ~/.codex/sessions/**/*.jsonl
  3. The AI client derives source, session_id, and source_session_updated_at from each file
  4. If unprocessed sessions exist, report the count and a short summary
  5. Only when the user wants it, the AI client reads the relevant JSONL transcript directly
  6. Use paput_add_knowledge_candidates to add reusable, non-duplicate, non-sensitive candidates to the API-backed pending queue
  7. Use paput_mark_processed_session when a reviewed session has no candidates to add

Extraction criteria

Only capture technical knowledge, decision criteria, and procedures that can be reused in other projects. Tool settings and one-off operation logs are not candidates, but AI-collaboration practices and review principles — how you hand work to an AI, your review discipline for AI-generated changes — are worth capturing when they can be generalized to hold with a different tool on a different project (this is the scarcest, most durable axis).

Do not capture:

  • Project-specific specifications, screen names, business workflows, or operational rules
  • Customer data, secrets, tokens, or connection details
  • Concrete code fragments or local-environment-only details
  • Work logs, impressions, or rejected design history without reusable criteria
  • Content that duplicates existing memos or pending candidates

Relationship with paput-save

paput-harvest only adds candidates to pending. To save them as PaPut memos, use paput-save later, review the candidates, and explicitly approve what should be saved.

Notes

  • Local transcripts are read by the AI client, not by PaPut MCP
  • Candidates are first stored in the API-backed pending queue, not directly as PaPut memos
  • When available, the source session updated timestamp is used as the memo creation timestamp when saving
  • If a candidate may be duplicate or sensitive, it should be rejected or reported instead of added

Footer

About

  • About PaPut
  • News & Releases
  • About MCP Integration
  • Support
  • Development Roadmap

Legal

  • Terms of Service
  • Privacy Policy
  • Commercial Transaction Act Notation

Link

  • Developer X
  • Feedback

© 2025 PaPut. All rights reserved.