Skip to main content

Universal agent activity ledger. Records what AI agents do.

Project description

inscript

Universal agent activity ledger.

When an AI agent works on code, inscript records everything: which project, which files, what changed. Any tool can read ~/.inscript/ for context.

Install

pip install inscript

What it records

~/.inscript/
  active_project              ← which codebase right now
  active_session              ← current session ID
  config.toml                 ← retention policy
  sessions/
    <session-id>/
      meta.json               ← start time, project, status
      touches.jsonl           ← every file read/edit/write
      diffs.jsonl             ← raw changes (Edit old→new, Write content hash)
      summary.json            ← stats written on session end
  overlap/
    <project-hash>.jsonl      ← when 2+ sessions touch the same files

Setup

inscript init    # configure retention, storage, diffs

Then add hooks to ~/.claude/settings.json:

{
  "hooks": {
    "SessionStart": [
      {
        "hooks": [{ "type": "command", "command": "inscript-hook" }]
      }
    ],
    "PostToolUse": [
      {
        "matcher": "Read|Edit|Write|Glob|Grep",
        "hooks": [{ "type": "command", "command": "inscript-hook", "async": true }]
      }
    ],
    "Stop": [
      {
        "hooks": [{ "type": "command", "command": "inscript-hook" }]
      }
    ]
  }
}

CLI

inscript              # status: active project + session
inscript log          # activity log for current session
inscript log <id>     # activity log for a specific session
inscript overlap      # show file collisions across sessions
inscript export <id>  # export session as markdown
inscript cleanup      # enforce retention policy
inscript init         # setup wizard

Python API

from inscript_pkg import active_project, active_session, list_sessions

project = active_project()    # Path or None
session = active_session()    # session ID or None
all_sessions = list_sessions()  # [{session_id, start_time, project, status}, ...]

How it works

Three Claude Code hooks write to ~/.inscript/:

  • SessionStart → creates sessions/<id>/meta.json
  • PostToolUse → appends to touches.jsonl and diffs.jsonl
  • Stop → writes summary.json with session stats

Any MCP server, script, or tool can read these files. No coordination needed. The agent doesn't know inscript exists.

Overlap detection

When two Claude Code sessions work on the same project simultaneously, inscript records which files both sessions touch. Run inscript overlap to see collisions.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

inscript-0.3.0.tar.gz (9.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

inscript-0.3.0-py3-none-any.whl (10.8 kB view details)

Uploaded Python 3

File details

Details for the file inscript-0.3.0.tar.gz.

File metadata

  • Download URL: inscript-0.3.0.tar.gz
  • Upload date:
  • Size: 9.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for inscript-0.3.0.tar.gz
Algorithm Hash digest
SHA256 0306b1c409a5e9c47da1f952ff351a44f0482ae4a75928c54382624669f2aff4
MD5 fa0117bd8fdca44ae22df1ca590bd3b7
BLAKE2b-256 5a095e096aa9fb1bf634ab7eee50cdb5eaf2b5f8264c3df6e411c515e7faec07

See more details on using hashes here.

File details

Details for the file inscript-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: inscript-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 10.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for inscript-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 075309a2683bad459eac48f477fa1da8aeb4fb1fef3b245d19e5d8435919db81
MD5 8cefdd55d77132d60ad5d4419f62548c
BLAKE2b-256 98b9c85e729182e18debfeaf8d6861c60df10d1d5988152a36ba1aa5c08107eb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page