Support transcripts from other coding agents (Codex, Cursor, Gemini CLI, opencode)
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Accessibilité débutants
- 45/100
Piste de recherche
Commencez dans src/transcript.rs et lisez la logique existante de normalisation et de discovery de Claude Code. Choisissez un agent et inspectez son format de session avant d’ajouter un parser, la discovery par défaut et un fixture écrit à la main sous tests/fixtures/. C’est terminé lorsque cet agent produit des valeurs ToolCall et AssistantText avec leur ordre, tandis que les vérifications en aval existantes continuent de fonctionner.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
backcheck reads Claude Code transcripts today. Nothing about the idea is Claude-specific —
every coding agent writes a session log containing what it said and what it ran, which is all
the analysis needs.
Widening this is the single highest-leverage change to the project: the verification engine,
the runner parsers, and the tamper detection are all agent-agnostic already.
The shape of the work
Only src/transcript.rs is Claude-specific. It normalises a
session file into three things the rest of the code consumes:
ToolCall { seq, name, input, result }— what ran, and what it printedAssistantText { seq, text, is_last }— what the agent said- ordering, so a claim can be compared against evidence that preceded it
Everything downstream (claims, evidence, verify, tamper, report) already works purely
against those types. Adding an agent means writing a parser that produces them, plus discovery
of where that agent stores its sessions.
Agents worth supporting
- OpenAI Codex CLI —
~/.codex/sessions/ - Cursor — agent session storage
- Gemini CLI —
~/.gemini/ - opencode
- Aider —
.aider.chat.history.md(a different shape: prose plus diffs) - GitHub Copilot CLI / coding agent
- Amp, Cline, Roo
Suggested approach
- Introduce a
Sourcetrait (or an enum) withparse(path) -> Transcriptand a
discover()for the agent's default session location. - Move the current Claude Code logic behind it, unchanged.
- Auto-detect by path and file shape, with
--agent <name>to force it. - Add a small fixture per agent under
tests/fixtures/— hand-written, never a real
transcript, since those contain real code and sometimes secrets.
Starting with one agent end-to-end is much more useful than a framework for all of them.
Comment here with which you're taking so two people don't write the same parser.
Worth knowing
Claude Code does not record exit codes, which is why outcomes are recovered from printed
output. If another agent does record them, that is strictly better evidence — the design
should let a source say "I know the exit code" rather than forcing everything through text
parsing.
- Langage dominant
- Rust
- Étoiles
- 0
- Forks
- 2
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Propose un modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de VectorInstitute/backcheck
-
accuracy false-negative false-positive help wanted
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
-
good first issue help wanted runner
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
-
accuracy enhancement help wanted
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 32/100
VectorInstitute/backcheck#11 ·
-
enhancement good first issue help wanted
Difficulté 4/5 3-5 jours Accessibilité débutants 55/100
VectorInstitute/backcheck#10 ·
-
enhancement good first issue help wanted
Difficulté 3/5 1-2 jours Accessibilité débutants 68/100
Toutes les issues de VectorInstitute/backcheck
Issues similaires
-
backend::vllm diffusion multimodal
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 85/100
lambdaclass/ethrex#7329 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 88/100
shadowsocks/shadowsocks-rust#2186 · 1 commentaire ·
-
[Chore]: Inconsistent wasm-pack binary invocation in justfile breaks cross-platform executionOuverteC-bug S-awaiting-triage
Difficulté 1/5 Moins d'une heure Accessibilité débutants 92/100
juspay/hyperswitch#14479 ·
Les mainteneurs répondent en général sous 1 jour