Agent skill

Analyze Trajectory

by yologdev in yologdev/yoyo-evolve

Diagnoses a recurring failure such as a stuck task, repeated CI error or frequent reverts by sending sub-agents through the logs and returning one root-cause diagnosis.

MITAuto-check passedAgent Workflows

Install Analyze Trajectory

skills CLI
$ npx skills add yologdev/yoyo-evolve --skill analyze-trajectory -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install yologdev/yoyo-evolve analyze-trajectory --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/yologdev/yoyo-evolve.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/analyze-trajectory .claude/skills/analyze-trajectory && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
analyze-trajectory
GitHub stars
1.9k
Token cost
~3.6k tokens
SKILL.md length
1,547 words
Files
1
Skills in repo
15
Repo updated
First seen
Licence
MIT

At a glance

Diagnoses a recurring failure such as a stuck task, repeated CI error or frequent reverts by sending sub-agents through the logs and returning one root-cause diagnosis.

  • Works in 6 steps: Frame the question (single sentence) → Identify the artifact → Decide: direct read or sub-agent? → …
  • A task has been attempted several times with no success
  • SKILL.md covers When to use, When NOT to use, Procedure and Pitfalls, plus 2 more sections
  • Calls git and gh

What it does

Built for an agent that keeps hitting the same failure, this skill produces a focused diagnosis of why. Raw GitHub Actions logs are too large and noisy for the main context window, so the agent keeps its own context small, sends a sub-agent to read the logs and gets back a summary of one to three sentences, recursing only if that summary raises a deeper question.

Triggers are a task flagged as STUCK, a CI error fingerprint that appears at least twice, repeated revert commits across sessions, or an issue mentioned in several session journals without resolution. The procedure starts by writing one specific question that names a run id, session day or error fingerprint, then fetches exactly one artifact for it, such as the failed log of a CI run through gh or the diff of a reverted commit through git. It advises against digging when the trajectory looks healthy, when the cause is already known, or when the failure is the task being implemented.

When your agent uses it

  • A task has been attempted several times with no success
  • The same CI error fingerprint keeps appearing in recent runs
  • Several revert commits show up across recent sessions

Example prompts

  • “Figure out why the evaluator phase keeps failing in CI across the last few sessions.”
  • “This task was reverted on several separate sessions, so find the recurring blocker.”
  • “Dig into the failed CI run in our recurring-errors list and give me one root cause.”

Requirements

  • The gh CLI and git for fetching logs and diffs

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Frame the question (single sentence)
  2. Identify the artifact
  3. Decide: direct read or sub-agent?
  4. Dispatch a sub-agent (if needed)
  5. Recurse if the sub-agent returns deeper_question
  6. Aggregate to a single diagnosis

What it can do on your machine

Read from SKILL.md and the folder at commit 637e940. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • git
    • gh

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • alexzhang13.github.io

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Analyze Trajectory loads about 3.6k tokens when it runs. Until then it costs about 52 tokens; SKILL.md has 1,547 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~52
When it runs · the whole SKILL.md, loaded when a task matches
~3.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from yologdev/yoyo-evolve at commit 637e940, republished under its MIT licence (© yologdev). 1,547 words, ~3,611 tokens.

Download SKILL.mdSave it as .claude/skills/analyze-trajectory/SKILL.md (or your agent's skills folder).
name
analyze-trajectory
description
Diagnose a recurring failure (STUCK task, clustered CI error, frequent reverts) by dispatching sub-agents to digest CI logs without bloating main context. Returns one root-cause diagnosis.
tools
bash, read_file, sub_agent, shared_state
core
true
origin
creator

Analyze Trajectory

You are doing a deep dive into a recurring failure pattern. The harness's pre-computed YOUR TRAJECTORY block surfaces that something is recurring; this skill helps you understand why and produce a focused diagnosis.

This skill exists because raw GitHub Actions logs are too large and noisy to digest in your main context window. The pattern (Recursive Language Model — see Reithan's reference in issue #226) is: keep your root context small, dispatch a sub-agent to read the raw logs, and have the sub-agent return a 1-3 sentence summary. Recurse if the summary surfaces a deeper question.

When to use

Trigger this skill when ANY of these hold:

  • YOUR TRAJECTORY flagged a STUCK task (≥3 attempts in window, 0 successes)
  • A CI error fingerprint appeared ≥2× in the recurring-errors section
  • Multiple revert commits appeared across recent sessions (the trajectory's "Reverts in window" line shows the count)
  • A specific issue (e.g. #205) has been mentioned in multiple session journals without resolution

When NOT to use

  • The trajectory looks healthy. Don't spelunk for problems that aren't there — that's just burning sub-agent budget.
  • The failure is well-understood already (you already know the cause from journal/learnings). Skip straight to the fix.
  • You're inside Phase B (implementation) and the failure is the task you're currently doing — fix it directly, don't recurse.

Procedure

1. Frame the question (single sentence)

Examples of well-framed questions:

  • "Why does the evaluator phase fail with 'AnthropicError: rate_limit_exceeded' on sessions day-53, day-55, and day-56?"
  • "Why was the task 'Add /fallback flag' reverted on 6 separate sessions? What's the recurring blocker?"
  • "What does run 4321 look like at the moment of failure?"

A good question names a specific event (run id, session day, error fingerprint) and what you want to know about it. Don't ask vague questions like "what's wrong with my trajectory?"

2. Identify the artifact

For each question, pick exactly one artifact to fetch:

  • CI failure → run id from the trajectory's CI errors section. gh run view <id> --log-failed (drop --repo; gh auto-detects from the local clone's origin remote, which is the right one)
  • Reverted task → commit SHA of the revert. git show <sha> and the next-newer commit's full diff
  • Session-level wreckage → audit.jsonl from that session. Note: $YOYO_AUDIT_DIR is set by the harness ONLY inside scripts/skill_evolve.sh (a different invocation than evolve.sh). When loaded inside a normal evolve session, you must fetch the audit-log branch yourself first:
    bash
    git fetch --depth 50 origin audit-log:audit-log
    AUDIT_WT=$(mktemp -d)
    git worktree add "$AUDIT_WT" audit-log
    ls "$AUDIT_WT/sessions/" | tail -10
    # ... read what you need ...
    git worktree remove --force "$AUDIT_WT"
3. Decide: direct read or sub-agent?

Estimate the artifact size first:

bash
gh run view <id> --log-failed 2>/dev/null | wc -c
  • < 5KB: read it directly with read_file or bash. Skip sub-agent — the cost isn't worth it.
  • ≥ 5KB: dispatch a sub-agent. Don't load raw logs into your main context.
3.5. Handle large artifacts (token-aware chunking)

Before dispatching a sub-agent, estimate whether the artifact fits in a single sub-agent's context:

estimated_tokens = artifact_bytes / 4

If estimated_tokens ≤ 30,000 (roughly half a sub-agent's context window): proceed to Step 4 as normal — single sub-agent dispatch.

If estimated_tokens > 30,000: the artifact is too large for one sub-agent to digest reliably. Split and fan out:

  1. Split into chunks of ~20,000 tokens (~80,000 bytes) with 2,000-token (~8,000 byte) overlap between consecutive chunks. The overlap ensures error context that spans a chunk boundary isn't lost.

  2. Store each chunk separately in shared state:

    shared_state set key="trajectory.run-<id>.chunk-1" value="<first 80KB>"
    shared_state set key="trajectory.run-<id>.chunk-2" value="<next 80KB, starting 8KB before the split>"
    ...
  3. Dispatch one sub-agent per chunk with the prompt:

    You are analyzing CHUNK <N> of <M> from a CI log.
    
    The chunk is stored in shared state under key "trajectory.run-<id>.chunk-<N>".
    Read it with: shared_state get key="trajectory.run-<id>.chunk-<N>"
    
    Question: <your single-sentence question from step 1>
    
    Reply with ONLY a JSON object (no markdown fences, no prose):
    {
      "summary": "1-3 sentences on what this chunk reveals about the failure",
      "key_lines": ["relevant line 1", "relevant line 2"],
      "chunk_relevant": true,
      "confidence": "high|medium|low"
    }
    
    If this chunk contains no information relevant to the question, set chunk_relevant to false
    and keep summary/key_lines minimal.
  4. Merge chunk results — after all chunk sub-agents return, store their combined results in shared state and dispatch one final merge sub-agent:

    shared_state set key="trajectory.run-<id>.chunk-results" value="<JSON array of chunk responses>"

    Merge sub-agent prompt:

    You are merging analyses from <M> chunks of a single CI log.
    
    The chunk analyses are stored in shared state under key "trajectory.run-<id>.chunk-results".
    Read them with: shared_state get key="trajectory.run-<id>.chunk-results"
    
    Original question: <your single-sentence question from step 1>
    
    Synthesize the chunk analyses into a single diagnosis.
    Reply with ONLY a JSON object (no markdown fences, no prose):
    {
      "summary": "1-3 sentences explaining the root cause",
      "key_lines": ["most important line 1", "most important line 2"],
      "deeper_question": null,
      "confidence": "high|medium|low"
    }
  5. The merge sub-agent's response is your diagnosis — validate it using the same JSON contract rules in Step 4.

Chunking counts toward the recursion cap (Step 5): each chunk sub-agent is depth 1, the merge sub-agent is depth 1. If chunking used 4 chunk agents + 1 merge agent, you've used 1 of your 3 recursion levels. You can still recurse on a deeper_question from the merge result, but be mindful of the budget.

4. Dispatch a sub-agent (if needed)

Store the artifact in shared state first — don't paste large logs into the sub-agent prompt. Sub-agents automatically have access to the shared_state tool and share the same key-value store as their parent.

Use the namespace convention trajectory.<key> for all artifacts stored by this skill.

bash
# 1. Fetch the artifact into a shell variable
LOG=$(gh run view <id> --log-failed 2>/dev/null)

# 2. Store it in shared state (the parent agent calls this directly)
shared_state set key="trajectory.run-<id>" value="$LOG"

Then dispatch the sub-agent with a reference, not the artifact itself:

Question: <your single-sentence question from step 1>

The CI log is stored in shared state under key "trajectory.run-<id>".
Read it with: shared_state get key="trajectory.run-<id>"

Reply with ONLY a JSON object (no markdown fences, no prose) matching this schema:

{
  "summary": "1-3 sentences explaining the root cause, with no surrounding quotes",
  "key_lines": ["file.rs:42:11 borrow of moved value", "AnthropicError: rate_limit_exceeded"],
  "deeper_question": null,
  "confidence": "medium"
}

Field rules:
- summary: free string, 1-3 sentences
- key_lines: array of 1-5 short strings (max 100 chars each) that prove the cause
- deeper_question: JSON null when no follow-up is needed; otherwise a single-sentence string
- confidence: exactly one of "high", "medium", or "low"

Sub-agents inherit RTK compression on bash output and directory restrictions, but they do NOT inherit skills. Keep the sub-agent prompt fully self-contained — don't reference other skills. Sub-agents share the parent's SharedState store automatically (via SharedStateTool wired by build_sub_agent_tool).

Validate the sub-agent response — after the sub-agent returns, check:

  1. Parse as JSON. Strip any leading/trailing whitespace and markdown code fences (```json ... ```) that sub-agents sometimes add despite instructions.
  2. Check required fields. The parsed object must contain all four keys: summary (string), key_lines (array of strings), deeper_question (string or null), confidence (one of "high", "medium", "low").
  3. If valid → proceed to Step 5 (recursion check).
  4. If invalid → retry ONCE with this prompt:
Your previous response was not valid JSON or was missing required fields.

Please respond with ONLY a JSON object (no markdown, no explanation):
{
  "summary": "1-3 sentences explaining the root cause",
  "key_lines": ["key line 1", "key line 2"],
  "deeper_question": null,
  "confidence": "high|medium|low"
}

Required fields: summary (string), key_lines (array), deeper_question (string or null), confidence ("high"|"medium"|"low").
  1. If retry also fails → fall back gracefully (see below).

Sub-agent failure fallback — if the sub-agent (a) errors, (b) returns non-JSON twice (initial + retry), (c) returns truncated JSON that can't be repaired, or (d) is unavailable as a tool:

  1. Append the raw response to memory/learnings.jsonl as a learning entry with pattern_key: trajectory.subagent_malformed_response so we can debug later.
  2. Extract whatever text the sub-agent did return and treat it as the summary field. Construct a synthetic response: {"summary": "<raw text, first 500 chars>", "key_lines": [], "deeper_question": null, "confidence": "low"}.
  3. If even the raw text is empty or the sub-agent errored entirely, downgrade to a direct read of the artifact: use shared_state get key="trajectory.run-<id>" to retrieve the stored log, then read the last 50-100 lines in your main context.
  4. Produce a low-confidence diagnosis from what you can see directly. Skip recursion (no point — sub-agent path is broken).
  5. Mark the diagnosis with confidence: low (sub-agent unavailable) so downstream decisions know to be cautious.
Show full SKILL.md (579 more words)Show less
5. Recurse if the sub-agent returns deeper_question

If confidence is "low" AND deeper_question is a non-null string (JSON null returns false on this check, but if you see the literal string "null" treat it as null too — that's a sub-agent bug worth logging), run another sub-agent dispatch with the narrower question. Reuse the same artifact; the sub-agent will focus differently.

Hard cap: recursion depth = 3. That's: initial dispatch → 1st recursion → 2nd recursion. After that, accept whatever you have. The cap is informed by the recursive-LM literature (RLM blog, alexzhang13.github.io/blog/2025/rlm/) and prevents runaway agent costs.

If you hit the cap without confidence == "high", that's still a valid outcome — write the diagnosis with whatever clarity you have and flag it as "needs follow-up".

6. Aggregate to a single diagnosis

Produce a 3-5 sentence diagnosis paragraph that includes:

  • What recurs: one-line summary of the pattern
  • Root cause (or best-guess): from the sub-agent's summary
  • Evidence: ≤3 specific lines or run IDs
  • Suggested next attempt: one concrete action (a different approach, a new task, or "log to learnings.jsonl and skip for now")

Write the diagnosis somewhere durable:

  • If you're in a normal evolve session and this informed your task choice → cite it in the assessment doc
  • If you're investigating a specific issue → comment on the issue with the diagnosis
  • Always also append a learnings.jsonl entry. The pattern_key field (optional in the standard schema, see skills/communicate/SKILL.md) takes a kebab-case <verb>.<object> value — for trajectory-derived diagnoses, use pattern_key: trajectory.<short-slug> (e.g., trajectory.fallback_provider_stuck, trajectory.evaluator_rate_limit). This lets skill-evolve cluster recurring trajectory findings.

Pitfalls

  • Don't ask the sub-agent to make decisions. It summarizes evidence; you decide what to do. Sub-agents in chained recursion can drift if asked to plan.
  • Don't recurse on confidence: high. The whole point is to stop early when you have a clear answer.
  • Don't dump multiple artifacts to one sub-agent. One artifact per dispatch keeps the sub-agent focused and the JSON output reliable. Store each artifact under a separate trajectory.<key> in shared state.
  • Don't forget the recursion cap. 3 is the hard limit. If you find yourself wanting depth 4, your initial question was probably too vague — go back to step 1.
  • Skills do not chain. Sub-agents don't load this skill or any other; you must include the question and shared-state key reference in the sub-agent's prompt directly.
  • Don't run this skill inside Phase B (implementation). That's task-execution time, not introspection time. Save the diagnosis for the next session's Phase A1 (assess).

Verification

A diagnosis is "good enough" when ALL of:

  • It names a concrete file/line/condition (not "something with the API")
  • It cites at least one specific run id or commit SHA
  • The suggested next attempt is different from what's already been tried (otherwise you'll just hit the same wall)
  • The total work used ≤3 sub-agent dispatches

If the diagnosis fails any of these, recurse one more time (within the cap) or accept the partial result and document the open question in learnings.jsonl.

What this skill deliberately does NOT do

  • Does not modify code. Diagnosis is the output. The actual fix is a normal task on a future evolve session — it's better to step away with the diagnosis written down and let the next session's planning agent decide whether to act on it.
  • Does not auto-create issues. If the diagnosis is worth filing, do it via communicate skill in the same session — but it's a separate decision, not part of this skill's procedure.
  • Does not write to audit-log branch. The branch is read-only from this skill's perspective.

© yologdev, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/analyze-trajectory of yologdev/yoyo-evolve.

Open the folder on GitHubat commit 637e940

Compare with similar skills

Analyze Trajectory next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Analyze Trajectory compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Analyze Trajectory this skillyologdev/yoyo-evolve1.9k—~3.6kAutomated safety check: PassMIT
Claude Statusbarleeguooooo/claude-code-usage-bar377—~2.5kAutomated safety check: PassMIT
Badstephenleo/bmad-autonomous-development107—~7.7kAutomated safety check: PassMIT
Build Failure Recoveryjsmastery-pro/jsm-agent-skill216—~1.8kAutomated safety check: PassMIT
Bug Hunt SwarmDimillian/Skills4k—~1.6kAutomated safety check: PassMIT
Bug Hunt Swarmsickn33/agentic-awesome-skills47k1 repos~1.9kAutomated safety check: PassMIT

Similar skills

  • Claude Statusbar

    leeguooooo/claude-code-usage-bar

    Manage cs (claude-statusbar) — switch theme/style/density, override severity colors, preview combinations, run doctor, reset config, install, upgrade (cs upgrade — the only supported upgrade path)…

    377 GitHub stars~2.5k tokensUpdated today
    Agent WorkflowsAuto-check passed
  • Bad

    stephenleo/bmad-autonomous-development

    BMad Autonomous Development — orchestrates parallel story implementation pipelines.

    107 GitHub stars~7.7k tokensUpdated 5 mo ago
    Agent WorkflowsAuto-check passed
  • Build Failure Recovery

    jsmastery-pro/jsm-agent-skill

    Diagnoses which of three failure modes a stalled AI-assisted build is in, then chooses a targeted fix, a hard reset or a rethink instead of more prompting.

    216 GitHub stars~1.8k tokensUpdated 3 mo ago
    Agent WorkflowsAuto-check passed
  • Bug Hunt Swarm

    Dimillian/Skills

    Parallel read-only multi-agent root-cause investigation for bugs, regressions, crashes, flaky behavior, or unexplained failures.

    4k GitHub stars~1.6k tokensUpdated 6 mo ago
    Agent WorkflowsAuto-check passed
  • Bug Hunt Swarm

    sickn33/agentic-awesome-skills

    Parallel read-only multi-agent root-cause investigation for bugs, regressions, crashes, flaky behavior, or unexplained failures.

    47k GitHub starsUsed in 1 repo~1.9k tokens
    Agent WorkflowsAuto-check passed
  • CI Failure Triage and Repair

    Chachamaru127/claude-code-harness

    Diagnoses failing CI pipelines and tests, deciding first whether the test or the implementation is at fault, and hands hard cases to a dedicated fixer subagent.

    3.2k GitHub starsUsed in 1 repo~1.1k tokens
    DevOps & CloudAuto-check: notes

More from yologdev/yoyo-evolve

All 15 skills in this repo
  • Blindspot Code Critique

    yologdev/yoyo-evolve

    Runs a structured critique of code, architecture or APIs to surface what familiarity hides, such as panics, security holes and design debt.

    1.9k GitHub stars~2.2k tokensUpdated today
    Auto-check passed
  • Sets a warm, plain-spoken voice for an agent's journal entries and GitHub issue replies, with rules on openings, jargon, honesty and endings.

    1.9k GitHub stars~2.6k tokensUpdated today
    Auto-check passed
  • Codebase Explorer

    yologdev/yoyo-evolve

    Builds a structural map of a large or unfamiliar codebase by dispatching sub-agents to summarize regions, keeping the main context small.

    1.9k GitHub stars~2.8k tokensUpdated today
    Auto-check passed
  • Crates.io Release Check

    yologdev/yoyo-evolve

    Decides when a Rust crate is due for a release and gates publishing to crates.io, using a short git-based cadence check run at the start of a session.

    1.9k GitHub stars~2.1k tokensUpdated today
    Auto-check passed
  • Agent Self-Evolution Rules

    yologdev/yoyo-evolve

    Sets ground rules for a coding agent that edits its own Rust source: read the code and journal first, write tests first, commit small changes and check compilation after each file.

    1.9k GitHub stars~1.9k tokensUpdated today
    Auto-check: warnings
  • Self Assess

    yologdev/yoyo-evolve

    Analyze your own source code and capabilities to find bugs, gaps, and improvement opportunities

    1.9k GitHub stars~547 tokensUpdated today
    Auto-check passed

Questions about Analyze Trajectory

What does Analyze Trajectory do?

Diagnoses a recurring failure such as a stuck task, repeated CI error or frequent reverts by sending sub-agents through the logs and returning one root-cause diagnosis. Built for an agent that keeps hitting the same failure, this skill produces a focused diagnosis of why. Raw GitHub Actions logs are too large and noisy for the main context window, so the agent keeps its own context small, sends a sub-agent to read the logs and gets back a summary of one to three sentences, recursing only if that summary raises a deeper question.

When should I use Analyze Trajectory?

Analyze Trajectory fits situations like: A task has been attempted several times with no success; the same CI error fingerprint keeps appearing in recent runs; several revert commits show up across recent sessions.

How do I install Analyze Trajectory in Claude Code?

Run `npx skills add yologdev/yoyo-evolve --skill analyze-trajectory -a claude-code`. Or copy the skill folder (skills/analyze-trajectory in yologdev/yoyo-evolve) into .claude/skills/analyze-trajectory in your project. Claude Code loads it when a task matches its description.

How do I install Analyze Trajectory in Codex?

Run `npx skills add yologdev/yoyo-evolve --skill analyze-trajectory -a codex`. Or copy the skill folder (skills/analyze-trajectory in yologdev/yoyo-evolve) into .agents/skills/analyze-trajectory in your project. Codex loads it when a task matches its description.

Can I use Analyze Trajectory in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add yologdev/yoyo-evolve --skill analyze-trajectory -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/analyze-trajectory, .gemini/skills/analyze-trajectory, .github/skills/analyze-trajectory and .opencode/skills/analyze-trajectory in your project.

What does Analyze Trajectory need to run?

Going by SKILL.md and its folder, Analyze Trajectory needs the command-line tools its instructions call (git and gh). Our summary lists: The gh CLI and git for fetching logs and diffs.

Does Analyze Trajectory access the network?

SKILL.md names 1 domain. As links in the text: alexzhang13.github.io. This is read from the text; nothing was executed.

Is Analyze Trajectory safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Analyze Trajectory use?

Analyze Trajectory is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Analyze Trajectory use?

About 3.6k tokens (SKILL.md is roughly 14k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Analyze Trajectory?

Skills that share tags, products or a category with Analyze Trajectory: Claude Statusbar (leeguooooo/claude-code-usage-bar, 377 stars), Bad (stephenleo/bmad-autonomous-development, 107 stars), Build Failure Recovery (jsmastery-pro/jsm-agent-skill, 216 stars) and Bug Hunt Swarm (Dimillian/Skills, 4k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Analyze Trajectory?

yologdev (a GitHub user) maintains it in yologdev/yoyo-evolve, which has 1,888 GitHub stars. The repository holds 15 skills in this directory. The repository was last updated on October 7, 2026.

Source: yologdev/yoyo-evolve on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.