More screenshots

    Works with the AI Agents you already use

    Claude CodeClaude CodeCursorCursorCodex CLICodex CLIMuseMuseDotsDots+22 more

    TimeForge: Deterministic Event Timeline & Causal Audit

    1

    Builds one UTC timeline from mixed logs, CSVs, Slack exports and git, then answers what-led-to-X with line-cited evidence and honesty flags.

    $19

    Secure checkout via Stripe

    Money-back guarantee

    Converts to your local currency at checkout

    Security scanned
    TimeForge: Deterministic Event Timeline & Causal Audit

    TimeForge: Deterministic Event Timeline & Causal Audit

    Example session with this skill installed

    Our checkout service paged at 14:04 and recovered by 14:15. I have the app log, gateway JSONL, deploy CSV, PagerDuty alert JSON, Slack export and the git log from that window in ./incident/. Build the timeline and show me the evidence chain around the page - tell me what actually connects to the 5xx spike and what is just nearby noise.

    • Read your context and instructions
    • Compiled the timeforge
    $ node timeforge.mjs app.log gateway.jsonl deploys.csv alerts.json slack.json gitlog.txt
    timeforge: 27 events (38 raw, 0 exact-dupes merged, 1 bursts collapsed)
    span: 2026-10-17T08:30:00.000Z .. 2026-10-17T14:15:02.899902Z (5.751h)
    kinds: change=4 note=8 error=4 burst=1 diagnosis=2 detection=4 mitigation=2 resolution=2
    naive timestamps (assumedTZ tagged): 1
    order-ambiguous second buckets: 4
    warnings (8):
      NON_MONOTONIC  deploys.csv:L4 is earlier than deploys.csv:L3 in write order
      CLOCK_SKEW     gateway.jsonl: event 1500ms ahead of collector receipt
      ASSUMED_TZ     1 event(s) had no explicit offset - tagged assumedTZ
      ORDER_AMBIGUOUS 4 second-bucket(s) mix second and sub-second stamps
      BURST          app.log:L10..L21: 12 structurally-identical events in 0.3s
    timeline written: timeline.json
    
    $ node timeforge-query.mjs timeline.json chain E015 --window 300
    chain for E015 @ 2026-10-17T14:02:05.700Z (gateway upstream timeout POST /v1/cart)
      E008  [HARD_LINK shared trace_id=9f3c1a7b22]   app ERROR upstream timeout GET /v1/orders  cite: app.log:L3
      E009  [HARD_LINK shared trace_id=9f3c1a7b22]   gateway timeout GET /v1/orders             cite: gateway.jsonl:L1
      E014  [TEMPORAL_PROXIMITY +1.5s, no shared id] [BURST x12] Connection refused 10.0.1.4:5432  cite: app.log:L10
    

    17 candidates fell in the window; 2 share the request's trace_id, 14 are temporal adjacency only, and the 12-event retry burst is one collapsed line. Deploy v2.14.0 sits 2m 5s before the first timeout with no shared identifier - flagged as proximity, not cause. The report.html output carries the same flags for the incident review doc.

    shot-terminal

    Connects securely to your tools. The creator never sees your data.

    About this skill

    Most temporal-reasoning skills ship a prompt telling the agent how to think about time. The agent then has to sort 5,000 log lines inside its context window, guess at naive timestamps, and invent causality. TimeForge ships the engine instead.

    What it actually runs

    node timeforge.mjs app.log gateway.jsonl deploys.csv alerts.json slack.json gitlog.txt produces a single normalized timeline.json and a self-contained HTML report:

    • Parses 9 timestamp shapes including ISO with ms/us precision, syslog dates, git log stamps, Slack decimal epochs, and Unix ms
    • Merges exact duplicates and collapses structurally identical bursts (500 identical retries become one line with count and rate)
    • Flags what it cannot prove: TZ-naive stamps, mixed second vs sub-second ordering, non-monotonic write order, clock skew
    • Cites every event to its source file, line, or JSON path

    node timeforge-query.mjs timeline.json chain E019 reconstructs the evidence chain around any event. Each link is labeled HARD_LINK (shared trace_id, request_id, span, commit or PR number) or TEMPORAL_PROXIMITY (adjacent in time, nothing else). A baseline-rate check separates NEW_EVENT and ANOMALOUS_SPIKE from BACKGROUND_NOISE so pre-existing error sources are not blamed for the outage.

    What it refuses to do

    • It never asserts causation. HARD_LINK means shared identifier, TEMPORAL_PROXIMITY means nothing else.
    • It does not silently normalize ambiguous input. Naive timestamps are tagged assumedTZ, not rewritten.
    • It emits no confidence scores, root-cause verdicts, or severity ratings. Those are judgement calls; this tool reports evidence.

    Package contents

    • 3 zero-dependency Node CLIs (timeline build, query, report)
    • 20-test suite (node:test, npm test)
    • Methodology and input-format reference docs
    • Runnable example incident with real fixture inputs and captured output

    Node 18+. Works with any SKILL.md-compatible agent.

    How to use

    Skills on Agensi run inside your AI agent. Copy the prompt, paste it into your agent, and it connects to Agensi and installs this skill for you. If a payment is needed, your agent shows it to you first.

    Reviews

    No reviews yet

    Be one of the first to try it. Every listed skill passes our trust checks below.

    Security scanned

    Passed our 8-point scan before listing

    Fresh listing

    Recently published to Agensi

    Money-back guarantee

    Doesn't do what its page promises? You get your money back.

    Trust & safety

    Security scanned

    Verified clean 2 days ago

    • Passed all security checks, Safe to install

    Requires

    Git

    Listed2 days ago

    What's inside

    Frequently Asked Questions