Install
openclaw skills install palest-inkTrack and recall your daily activities including git commits, web browsing, shell commands, and VS Code edits. Use this skill whenever the user asks about th...
openclaw skills install palest-ink好记性不如烂笔头 — The faintest ink is better than the strongest memory.
Palest Ink tracks the user's daily activities automatically:
All data is stored locally at ~/.palest-ink/data/YYYY/MM/DD.jsonl.
Before answering any query, first check if Palest Ink is installed:
test -f ~/.palest-ink/config.json && echo "INSTALLED" || echo "NOT_INSTALLED"
If NOT installed, tell the user:
Palest Ink is not yet set up. To install, run:
bash <SKILL_PATH>/../../collectors/install.shThis will set up automatic tracking of git, browsing, and shell activity.
Then stop and wait for the user to install.
Run the report generator:
python3 <SKILL_PATH>/scripts/report.py --date today
For yesterday: --date yesterday
For a specific date: --date 2026-03-03
For the whole week: --week
Read the output and present it conversationally to the user. Highlight notable patterns (focused work sessions, frequent topics, etc).
Use the query tool to search activity records:
python3 <SKILL_PATH>/scripts/query.py --date today --type git_commit --search "plugin"
Common query patterns:
| User asks about... | Arguments |
|---|---|
| A git commit | --type git_commit --search "keyword" |
| A webpage about X | --type web_visit --search-content "keyword" |
| Shell commands | --type shell_command --search "keyword" |
| VS Code files | --type vscode_edit --search "keyword" |
| App focus / screen time | --type app_focus --summary |
| File changes in project | --type file_change --search "project" |
| Everything today | --date today --summary |
| Date range | --from 2026-03-01 --to 2026-03-07 |
Important: When the user searches for web page content (e.g., "which website talked about homebrew"),
use --search-content instead of --search. This searches within page content summaries and keywords,
not just URLs and titles.
Show collector status and data statistics:
python3 <SKILL_PATH>/scripts/status.py
If the output contains "CLEANUP RECOMMENDED", proactively tell the user:
"Your palest-ink data is approaching 2 GB. Would you like me to clean up older records?"
If the user agrees, first show a dry-run preview:
python3 ~/.palest-ink/bin/cleanup.py --dry-run
Present the preview (how many files, date range, records count, space to free). Then ask for explicit confirmation before actually deleting:
python3 ~/.palest-ink/bin/cleanup.py --force
Options:
--max-size N — threshold in GB (default: 2.0)--keep-days N — always keep the most recent N days (default: 30)--dry-run — preview only, no changes--force — skip the interactive prompt (use after user confirms in chat)If scripts fail or for simple lookups, read the JSONL files directly:
~/.palest-ink/data/YYYY/MM/DD.jsonlgrep "keyword" ~/.palest-ink/data/2026/03/03.jsonlts, type, source, datagit_commit — data: repo, branch, hash, message, files_changed, insertions, deletionsgit_push — data: repo, branch, remote, remote_urlgit_pull — data: repo, branch, is_squashgit_checkout — data: repo, from_ref, to_branchweb_visit — data: url, title, visit_duration_seconds, browser, content_summary, content_keywordsshell_command — data: command, duration_seconds (null if not available)vscode_edit — data: file_path, workspace, languageapp_focus — data: app_name, window_title, duration_secondsfile_change — data: path, workspace, language, eventWeb visits include a content_summary field (up to 800 chars of page text) and
content_keywords (extracted keywords). This enables content-based search.
Example: if user browsed a page about "Homebrew installation guide", the content_summary will contain the actual page text, making it searchable even if the URL/title don't mention it.