Skip to content

Reviewing Candidates

Candidates are the raw per-session captures in the Skills tab → Sessions sub-view. They’re the feedstock for Recommended — not your finished skills. For the full picture of how the tabs fit together, see The Skills Tab.

StatusMeaning
candidateCaptured, awaiting review or clustering
promotedForce-promoted straight to the Library as a ~/.ptah/skills/<slug>/SKILL.md
rejectedDismissed — kept on record so identical trajectories aren’t re-captured

Each row also shows success and failure counts — a high failure ratio is a hint that the capture isn’t actually a good skill.

From a Sessions row:

  • Promote — force-elevate a single candidate straight to the Library, before it clusters or hits the success threshold. Use it when you already know one session is worth keeping.
  • Reject — remove it from the clustering pool (optionally with a reason). There’s no hard delete — the row is kept without its body so the same trajectory won’t be re-captured.
  • Select a row — drills into the invocation history that produced it, so you can audit what Ptah noticed.

For automation or A2A scenarios, the same actions are exposed as RPC methods:

MethodWhat it does
skillSynthesis:listCandidatesList candidates with current state
skillSynthesis:promoteManually promote a candidate to a skill
skillSynthesis:rejectMark a candidate as rejected
skillSynthesis:listSuggestionsList the cluster-distilled Recommended skills
skillSynthesis:getSuggestionFetch one recommendation’s full body
skillSynthesis:updateSuggestionEdit a pending recommendation before accepting
skillSynthesis:acceptSuggestionAccept a recommendation into the Library
skillSynthesis:statsAggregate counts (candidates, promoted, etc.)