11# chumdump
22
3+ [ ![ CI] ( https://github.com/m3lixir/chumdump/actions/workflows/ci.yml/badge.svg )] ( https://github.com/m3lixir/chumdump/actions/workflows/ci.yml )
4+ [ ![ Release] ( https://img.shields.io/github/v/release/m3lixir/chumdump?include_prereleases&label=release )] ( https://github.com/m3lixir/chumdump/releases )
5+
36` chumdump ` is a defensive CLI for inspecting AI-readable environments,
47detecting chum-like content, generating controlled chumbait, and
58monitoring whether AI crawlers, agents, or retrieval systems consume it.
@@ -11,9 +14,11 @@ obeyed, or leaked.
1114## Contents
1215
1316- [ What it does] ( #what-it-does )
17+ - [ Status] ( #status )
18+ - [ Install] ( #install )
19+ - [ Quickstart] ( #quickstart )
1420- [ Evidence model] ( #evidence-model )
15- - [ Install for development] ( #install-for-development )
16- - [ Example flow] ( #example-flow )
21+ - [ Workflow] ( #workflow )
1722- [ Commands] ( #commands )
1823- [ Safety and scope] ( #safety-and-scope )
1924
@@ -29,6 +34,81 @@ obeyed, or leaked.
2934- Generates Markdown, JSON, HTML, or SARIF-style reports.
3035- Cleans up deployed bait files from a marked destination.
3136
37+ ## Status
38+
39+ Current release:
40+ [ v0.1.0-alpha] ( https://github.com/m3lixir/chumdump/releases/tag/v0.1.0-alpha ) .
41+
42+ ` chumdump ` is an early alpha. The core local workflow is usable, but
43+ the command surface and report schema may change before a stable
44+ release.
45+
46+ ## Install
47+
48+ Install the current alpha from GitHub:
49+
50+ ``` shell
51+ python3 -m pip install \
52+ " git+https://github.com/m3lixir/chumdump.git@v0.1.0-alpha"
53+ ```
54+
55+ Install from a local checkout for development:
56+
57+ ``` shell
58+ python3 -m pip install -e " .[dev]"
59+ ```
60+
61+ Then check the CLI:
62+
63+ ``` shell
64+ chumdump --help
65+ ```
66+
67+ You can also run the CLI directly from a checkout:
68+
69+ ``` shell
70+ PYTHONPATH=src python3 -m chumdump --help
71+ ```
72+
73+ ## Quickstart
74+
75+ This creates a local project, generates bait, deploys a small dump,
76+ simulates one crawler-style access log entry, records the bite, and
77+ prints a report.
78+
79+ ``` shell
80+ chumdump init ai-crawler-test
81+ cd ai-crawler-test
82+
83+ chumdump bait create --type canary --name violet-harbor
84+ chumdump dump build --profile website --count 1
85+ chumdump deploy ./public
86+
87+ bait_file=$( basename " $( find public/bait -name ' *.md' | head -n 1) " )
88+ cat > access.log << EOF
89+ 203.0.113.10 - - [18/Jun/2026:12:00:00 +0000] "GET /bait/${bait_file} HTTP/1.1" 200 123 "-" "GPTBot/1.0"
90+ EOF
91+
92+ chumdump watch --logs ./access.log
93+ chumdump bites
94+ chumdump report --format markdown --stdout
95+ ```
96+
97+ Expected bite summary:
98+
99+ The ` GPTBot/1.0 ` user agent above is a local fixture. No real crawler
100+ visits the quickstart project.
101+
102+ ![ chumdump terminal demo] ( assets/terminal-demo.svg )
103+
104+ ``` text
105+ Detected bites: 1
106+ - accessed bait-canary-violet-harbor-... via /bait/bait-canary-violet-harbor-....md (GPTBot)
107+
108+ TYPE TIME ACTOR BAIT
109+ accessed 18/Jun/2026:12:00:00 GPTBot bait-canary-violet-harbor-...
110+ ```
111+
32112## Evidence model
33113
34114` chumdump ` should not merely generate bait. It should preserve evidence
@@ -61,19 +141,7 @@ The bite model is the heart of the tool. Without evidence, chumdump is
61141only a bait generator. With evidence, it becomes a small forensic
62142record for AI ingestion and agent-behavior testing.
63143
64- ## Install for development
65-
66- ``` shell
67- python3 -m pip install -e " .[dev]"
68- ```
69-
70- You can also run the CLI directly from a checkout:
71-
72- ``` shell
73- PYTHONPATH=src python3 -m chumdump --help
74- ```
75-
76- ## Example flow
144+ ## Workflow
77145
78146``` mermaid
79147flowchart TD
0 commit comments