Skip to main content

Code archaeologist - reconstruct function decision history via AST-aware lineage tracking

Project description

Archeologist - Code Lineage Tracker

CLI tool that reconstructs function decision history via AST-aware lineage tracking. Outputs JSON with commit messages and diffs - perfect for LLM context.

Install

pip install archeologist

Usage

# Analyze a specific function
arc analyze-function path/to/file.py function_name

# Get commit history with diffs
arc history path/to/file.py

# List all functions in a file
arc list-functions path/to/file.py

Output

JSON with commit hash, message, author, date, and diff:

{
  "file": "src/flask/helpers.py",
  "function": "stream_with_context",
  "repo": "/path/to/repo",
  "language": "python",
  "lineage_edges": 10,
  "changes": [
    {
      "commit_hash": "abc123...",
      "commit_message": "redirect defaults to 303",
      "author": "David Lord",
      "date": "2026-01-24T16:50:54-08:00",
      "diff": "diff --git a/src/flask/helpers.py..."
    }
  ]
}

Environment

# Optional: for PR details
export GITHUB_TOKEN=ghp_xxx

# Optional: for narrative synthesis
export CLAUDE_API_KEY=sk-ant-xxx

Languages Supported

Python, JavaScript, TypeScript, Go, Rust, Java, C, C++, Ruby, PHP

Commands

  • analyze - Analyze file lineage
  • analyze-function - Analyze specific function
  • history - Show commit history with diffs
  • list-functions - List all functions in file
  • search - Search for function across repo
  • stats - Repository statistics

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

archeologist-0.1.9.tar.gz (21.0 kB view details)

Uploaded Source

Built Distribution

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

archeologist-0.1.9-py3-none-any.whl (22.0 kB view details)

Uploaded Python 3

File details

Details for the file archeologist-0.1.9.tar.gz.

File metadata

  • Download URL: archeologist-0.1.9.tar.gz
  • Upload date:
  • Size: 21.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for archeologist-0.1.9.tar.gz
Algorithm Hash digest
SHA256 8039f6b9c08bb38cdbd41f9d04a32b2ee1280ebff27f95fa2897cc71d93339da
MD5 37c0158858e017cc8f3f5e6616dc1d79
BLAKE2b-256 dce5151e3c42f442124518e667c18ecc45f9dfc8fc63532899b818340a2fe30a

See more details on using hashes here.

File details

Details for the file archeologist-0.1.9-py3-none-any.whl.

File metadata

  • Download URL: archeologist-0.1.9-py3-none-any.whl
  • Upload date:
  • Size: 22.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for archeologist-0.1.9-py3-none-any.whl
Algorithm Hash digest
SHA256 59b8d79b04b2c2bea68cef92838e203c33df510a8d8e0aa1bd65353f13064cfe
MD5 c80c5555ceded18bf1b3cf80621859ad
BLAKE2b-256 d2422618f5f836d5a13dbaf3666d21a18c8693e4f1aa7e5df3a6261e7b851f1a

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