@workscribe/cli 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +100 -0
- package/dist/index.js +1234 -0
- package/dist/index.js.map +1 -0
- package/package.json +54 -0
- package/shell/hook.bash +29 -0
- package/shell/hook.zsh +26 -0
package/README.md
ADDED
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
# Chronicle
|
|
2
|
+
|
|
3
|
+
> Your work, automatically documented.
|
|
4
|
+
|
|
5
|
+
Chronicle is a CLI tool that passively captures your terminal activity and transforms it into readable daily work summaries — without you having to write anything.
|
|
6
|
+
|
|
7
|
+
```
|
|
8
|
+
$ chronicle summary
|
|
9
|
+
|
|
10
|
+
## api-service (feature/auth) — 2h 15m
|
|
11
|
+
|
|
12
|
+
- Set up authentication feature branch and installed JWT dependencies
|
|
13
|
+
- Resolved failing test suite for token validation logic
|
|
14
|
+
- Committed authentication middleware fixes
|
|
15
|
+
|
|
16
|
+
## infrastructure — 45m
|
|
17
|
+
|
|
18
|
+
- Restarted staging environment and verified deployment stability
|
|
19
|
+
- Investigated and resolved Docker networking issue in compose setup
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## How it works
|
|
23
|
+
|
|
24
|
+
A shell hook captures every command you run. At the end of the day, `chronicle summary` groups your activity into work sessions and sends structured event data (never raw commands) to your configured AI provider, which returns a standup-ready narrative.
|
|
25
|
+
|
|
26
|
+
```
|
|
27
|
+
shell hook → capture → SQLite → session grouper → AI provider → markdown
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Install
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
npm install -g @workscribe/cli
|
|
34
|
+
chronicle init
|
|
35
|
+
source ~/.zshrc # or restart your terminal
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
`chronicle init` walks you through choosing an AI provider and installs the shell hook. From that point, capture is automatic.
|
|
39
|
+
|
|
40
|
+
**Requirements:** Node.js 22+, macOS or Linux (zsh or bash)
|
|
41
|
+
|
|
42
|
+
## AI providers
|
|
43
|
+
|
|
44
|
+
Chronicle works with any of these — switch at any time via config:
|
|
45
|
+
|
|
46
|
+
| Provider | Config value | Requires |
|
|
47
|
+
|---|---|---|
|
|
48
|
+
| Anthropic (Claude) | `anthropic` | API key |
|
|
49
|
+
| OpenAI | `openai` | API key |
|
|
50
|
+
| Ollama (local) | `ollama` | Ollama running locally — free, offline |
|
|
51
|
+
| OpenAI-compatible | `openai-compatible` | API key + base URL (Groq, Together, Mistral…) |
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
chronicle config set ai.provider ollama # switch to local
|
|
55
|
+
chronicle config set ai.provider anthropic # switch to Anthropic
|
|
56
|
+
chronicle config set ai.apiKey <your-key>
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
## Commands
|
|
60
|
+
|
|
61
|
+
| Command | Description |
|
|
62
|
+
|---|---|
|
|
63
|
+
| `chronicle summary` | Generate today's work summary |
|
|
64
|
+
| `chronicle summary --date 2026-05-20` | Summary for a specific date |
|
|
65
|
+
| `chronicle summary --week` | Summary for the current week |
|
|
66
|
+
| `chronicle sessions` | List detected work sessions |
|
|
67
|
+
| `chronicle events` | List captured events |
|
|
68
|
+
| `chronicle export` | Save today's summary as a markdown file |
|
|
69
|
+
| `chronicle status` | Check capture is active and show event counts |
|
|
70
|
+
| `chronicle config` | View current configuration |
|
|
71
|
+
| `chronicle config set KEY VALUE` | Update a config value |
|
|
72
|
+
|
|
73
|
+
## Privacy
|
|
74
|
+
|
|
75
|
+
- All captured data is stored locally in `~/.chronicle/`
|
|
76
|
+
- Credentials are redacted before any event is written to disk (tokens, API keys, passwords, JWTs)
|
|
77
|
+
- Nothing is sent to any remote server except your configured AI provider at summary time
|
|
78
|
+
- Use Ollama to keep everything fully on-device
|
|
79
|
+
|
|
80
|
+
## Configuration
|
|
81
|
+
|
|
82
|
+
```bash
|
|
83
|
+
chronicle config set session.idleTimeout 20 # minutes before a new session starts (default: 30)
|
|
84
|
+
chronicle config set ai.model gpt-4o # override the default model for your provider
|
|
85
|
+
chronicle config set redact.extra "MY_PATTERN" # add a custom redaction regex
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
Config is stored at `~/.chronicle/config.json`.
|
|
89
|
+
|
|
90
|
+
## Debug mode
|
|
91
|
+
|
|
92
|
+
If capture isn't working, set `CHRONICLE_DEBUG=1` to write errors to `~/.chronicle/debug.log`:
|
|
93
|
+
|
|
94
|
+
```bash
|
|
95
|
+
CHRONICLE_DEBUG=1 chronicle status
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
## License
|
|
99
|
+
|
|
100
|
+
MIT
|