Process Inbox
telegramdesktop/tdesktop
Process the local ignored ai-tdesktop inbox into durable, independently testable Telegram Desktop task records while task execution worktrees remain active.
Build a trusted capture-and-triage front door so no commitment lives in your head.
$ npx skills add borghei/Claude-Skills --skill capture -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install borghei/Claude-Skills capture --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/borghei/Claude-Skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/personal-productivity/capture .claude/skills/capture && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "capture" agent skill from https://github.com/borghei/Claude-Skills/tree/main/personal-productivity/capture into .claude/skills/capture/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "capture", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/borghei/Claude-Skills/tree/main/personal-productivity/captureType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add borghei/Claude-Skills --skill capture -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install borghei/Claude-Skills capture --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/borghei/Claude-Skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/personal-productivity/capture .agents/skills/capture && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "capture" agent skill from https://github.com/borghei/Claude-Skills/tree/main/personal-productivity/capture into .agents/skills/capture/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "capture", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add borghei/Claude-Skills --skill capture -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install borghei/Claude-Skills capture --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/borghei/Claude-Skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/personal-productivity/capture .cursor/skills/capture && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "capture" agent skill from https://github.com/borghei/Claude-Skills/tree/main/personal-productivity/capture into .cursor/skills/capture/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "capture", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/borghei/Claude-Skills.git --path personal-productivity/capture--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add borghei/Claude-Skills --skill capture -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install borghei/Claude-Skills capture --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/borghei/Claude-Skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/personal-productivity/capture .gemini/skills/capture && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "capture" agent skill from https://github.com/borghei/Claude-Skills/tree/main/personal-productivity/capture into .gemini/skills/capture/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "capture", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install borghei/Claude-Skills captureInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add borghei/Claude-Skills --skill capture -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/borghei/Claude-Skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/personal-productivity/capture .github/skills/capture && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "capture" agent skill from https://github.com/borghei/Claude-Skills/tree/main/personal-productivity/capture into .github/skills/capture/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "capture", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add borghei/Claude-Skills --skill capture -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install borghei/Claude-Skills capture --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/borghei/Claude-Skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/personal-productivity/capture .opencode/skills/capture && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "capture" agent skill from https://github.com/borghei/Claude-Skills/tree/main/personal-productivity/capture into .opencode/skills/capture/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "capture", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
captureBuild a trusted capture-and-triage front door so no commitment lives in your head.
Capture is an agent skill from borghei/Claude-Skills. Build a trusted capture-and-triage front door so no commitment lives in your head. Use when open loops keep slipping, an inbox has become a backlog, or vague notes never turn into action.
Its SKILL.md is about 3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 10 other files, including scripts, reference files and assets (for example `assets/capture-log-template.md`, `assets/sample_capture_log.json` and `assets/weekly-processing-pass.md`).
It sits in Productivity & Automation, covering Email management. The repository describes itself as: 385 AI skills, 77 expert agents, and 900 stdlib Python tools for every team: engineering, PM, marketing, C-level, compliance, business ops, research, and a LinkedIn toolkit… The licence is MIT.
5 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 4a698e8. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 2 files in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
python3From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Capture loads about 3k tokens when it runs, and up to ~12k if it reads all its reference files. Until then it costs about 49 tokens; SKILL.md has 1,553 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from borghei/Claude-Skills at commit 4a698e8, republished under its MIT licence (© borghei). 1,553 words, ~2,974 tokens.
.claude/skills/capture/SKILL.md (or your agent's skills folder). This skill also uses 7 other files; get the full folder from GitHub.A reliable front door for every commitment, idea, and open loop — and a processing pass that empties it. Capture is cheap and fails silently: you never notice the thought you didn't record, only the dropped commitment weeks later. This skill covers the capture conventions, the triage decision rules that convert fragments into executable next actions, and the weekly pass that keeps the inbox at zero.
pricing, taxes) rather than actionstext and ideally captured_at, or a markdown bullet listBefore generating, confirm these inputs. If any is unknown or vague, ASK — do not assume:
Stop rule: ask only the 2-3 that most change the output. If the user says "just draft it," proceed and list your assumptions at the top of the artifact.
Run this at the start of every weekly pass. It does the mechanical sorting so your judgement is spent on the genuinely ambiguous items.
no-verb or unactionable-phrasing using the
grammar <concrete verb> <specific object> <qualifier>.python3 personal-productivity/capture/scripts/capture_triage.py \
--input personal-productivity/capture/assets/sample_capture_log.json \
--today 2026-07-21Filter to one bucket when working a single destination at a time:
python3 personal-productivity/capture/scripts/capture_triage.py \
--input personal-productivity/capture/assets/sample_capture_log.json \
--today 2026-07-21 --bucket project --format jsonMonthly. Answers a different question from triage: not "what is in the inbox" but "is this system actually working."
healthy, at-risk, or failing — and the verdict,
which names the dominant failure (processing vs phrasing).python3 personal-productivity/capture/scripts/capture_audit.py \
--input personal-productivity/capture/assets/sample_capture_log.json \
--today 2026-07-21Tighten the staleness threshold if you process more than weekly:
python3 personal-productivity/capture/scripts/capture_audit.py \
--input personal-productivity/capture/assets/sample_capture_log.json \
--today 2026-07-21 --stale-days 7 --format jsonThe load-bearing habit. 45 minutes, same slot weekly, defended like a meeting with someone you respect.
assets/weekly-processing-pass.md and work down it.mkdir -p build
python3 personal-productivity/capture/scripts/capture_triage.py \
--input personal-productivity/capture/assets/sample_capture_log.json \
--today 2026-07-21 --format json > build/triaged.jsonApply in this order for every item. The order prevents the most common error — doing a 90-second task that should have been deleted.
| Step | Question | If no | If yes |
|---|---|---|---|
| 1 | Is it actionable? | Reference, someday, or drop | Continue |
| 2 | What does done look like? | It is a decision, not a task | Continue |
| 3 | One step only? | Project + define first action | Action |
| 4 | Under 2 minutes? | Continue | Do it now |
| 5 | Am I the right person? | Delegate + follow-up date | Continue |
| 6 | Date-specific? | Next-actions list | Calendar |
| Decision | Test | [PROVEN] threshold |
|---|---|---|
| Do | Under 2 min and you are in processing mode | 2 min — filing plus re-contextualising exceeds the task past this point |
| Defer | Yours, over 2 min, no one else can do it | Costs a list slot and a weekly re-read, forever |
| Delegate | Someone else is better placed | Always creates a waiting-for entry with a date — 3 working days for same-week items, 1 week otherwise |
| Drop | No meaningful consequence if never done | Survived 3 weekly reviews with no progress = drop it; that is a decision, so record it as one |
Drop is the most under-used outcome and the highest-leverage one. A healthy pass drops 15-25% of items. Below that you are filtering at capture time, which uses exactly the tired, distracted judgement that capture exists to protect you from.
| Metric | Healthy | Warning | Broken |
|---|---|---|---|
| Median inbox age | < 7 days | 7-14 days | > 14 days |
| Share older than 14 days | < 20% | 20-40% | > 40% |
| Share with no concrete verb | < 25% | 25-50% | > 50% |
| Inbox size after a pass | 0-3 | 4-10 | > 10 |
| Capture latency (locked phone to saved text) | < 2 sec | 2-5 sec | > 15 sec — you are running on memory |
Two questions unstick anything. [PROVEN]
If both fail, it is not a task but an unmade decision. File it as
Decide whether to X by <date>.
Mistake: Capturing into six places and reviewing all six, so no single review ever produces the feeling of having seen everything. Why it happens: Each surface was added for a good local reason — voice memos for the car, a notebook for meetings, chat-to-self for links. Nobody decides to have six inboxes; they accumulate. Instead: Keep as many capture surfaces as you need, but exactly one processing inbox (two at the outside, when email is unavoidable). Every surface must drain into it. List every place an unprocessed commitment can currently live, and for each decide: drains into the primary, or is the primary. Anything else gets closed.
Mistake: Deciding whether something is worth capturing before writing it down, to keep the list manageable. Why it happens: A long list feels like failure, so people self-censor. It sounds like discipline. Instead: Capture with zero filtering and filter hard at processing. The judgement you apply mid-meeting or half-asleep is exactly the judgement capture exists to bypass. If your processing pass drops nothing, that is the tell — you are pre-filtering, and the items you silently discard are the small commitments whose loss damages trust most.
Mistake: Leaving items phrased as topics or mental states — pricing, follow up with Sam, think about the roadmap — and reviewing them week after week.
Why it happens: The phrasing feels sufficient at capture time because the full context is still in your head. It evaporates within days, leaving a fragment that reads as a task but cannot be executed.
Instead: Enforce the grammar <concrete verb> <specific object> <qualifier>, where the verb names something physically visible. "Decide," "handle," and "follow up" fail the test. Run capture_triage.py and rewrite everything it flags no-verb — those are the items your mind has been quietly skipping at every review.
Mistake: Reading through the whole inbox during the weekly pass, feeling current, and leaving the items in place. Why it happens: Reading is fast and feels like progress; deciding is slow and each decision has a small cost. Under time pressure, review substitutes for processing. Instead: Inbox zero means every item has physically left the inbox for a specific destination. Items remaining after a pass have had a decision deferred, and the same decision will be deferred next week — that is precisely how a five-item inbox becomes a fifty-item one. If the backlog is genuinely too large, declare bankruptcy on anything over 60 days old and archive it wholesale rather than skipping the pass.
| File | Purpose |
|---|---|
scripts/capture_triage.py | Sorts a capture log into action / project / reference / someday / drop, suggests a next action per item, flags 2-minute tasks and unactionable phrasing |
scripts/capture_audit.py | Scores capture-habit health — staleness, rot, phrasing quality, source leaks — and names the dominant failure mode |
references/capture-conventions.md | Friction budget, capture-surface ranking, the one-inbox principle, metadata worth recording, how trust is lost |
references/triage-decision-rules.md | Processing sequence, 2-minute rule constraints, do/defer/delegate/drop tests, vague-to-actionable conversion, weekly pass mechanics |
assets/weekly-processing-pass.md | Timed 45-minute checklist for the weekly inbox-zero pass with outcome-count targets |
assets/capture-log-template.md | Capture-log format, quality reminders, and the JSON schema the scripts read |
assets/sample_capture_log.json | 14-item sample log exercising every bucket and flag, so both workflows run out of the box |
© borghei, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 7 other files (scripts, references, assets) in personal-productivity/capture of borghei/Claude-Skills.
Open the folder on GitHubat commit 4a698e8
Capture next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Capture this skillborghei/Claude-Skills | 881 | — | ~3k | Automated safety check: Pass | MIT | |
| Process Inboxtelegramdesktop/tdesktop | 33k | 2 repos | ~4.5k | Automated safety check: Pass | GPL-3.0 | |
| Continuetelegramdesktop/tdesktop | 33k | 2 repos | ~9.4k | Automated safety check: Pass | GPL-3.0 | |
| Garden Inboxpaperclipai/paperclip | 99k | — | ~1.1k | Automated safety check: Pass | MIT | |
| Career-Ops Gmail Lead Plugincareer-ops-hq/career-ops | 74k | — | ~233 | Automated safety check: Notes | MIT | |
| Skill CompassEvol-ai/SkillCompass | 216 | 1 repos | ~3.1k | Automated safety check: Pass | MIT |
telegramdesktop/tdesktop
Process the local ignored ai-tdesktop inbox into durable, independently testable Telegram Desktop task records while task execution worktrees remain active.
telegramdesktop/tdesktop
Continue autonomous Telegram Desktop development from the shared ai-tdesktop repository.
paperclipai/paperclip
Scan a Paperclip user's Mine inbox, classify reversible archive candidates, request checkbox confirmation, and archive only accepted selections.
career-ops-hq/career-ops
Pulls job leads from a Gmail label into the career-ops pipeline, extracting job URLs from DMARC-passing emails and de-duplicating against existing leads.
Evol-ai/SkillCompass
Evaluate skill quality, find the weakest dimension, and apply directed improvements.
Atomic-Mail/atomic-mail-agentic
Read and write email through the Atomic Mail from an AI agent.
borghei/Claude-Skills
Run delivery when AI coding and ops agents take tickets. An agent skill from borghei/Claude-Skills.
borghei/Claude-Skills
Check AI-generated marketing content and reviews for required disclosures under the EU AI Act, FTC rules and platform AI-label policies.
borghei/Claude-Skills
Idea to AI-generated prototype to customer validation to engineering handoff.
borghei/Claude-Skills
Analytics engineering across data modeling, dbt, transformation, and semantic layers.
borghei/Claude-Skills
Ansoff Matrix — 4-quadrant framework for growth options: market penetration, market/product development, and diversification.
borghei/Claude-Skills
OKR brainstorming and validation using the Radical Focus framework — outcome objectives, measurable key results, counter-metrics.
Categories
Build a trusted capture-and-triage front door so no commitment lives in your head. Capture is an agent skill from borghei/Claude-Skills. Build a trusted capture-and-triage front door so no commitment lives in your head.
Capture fits situations like: open loops keep slipping; an inbox has become a backlog; vague notes never turn into action.
Run `npx skills add borghei/Claude-Skills --skill capture -a claude-code`. Or copy the skill folder (personal-productivity/capture in borghei/Claude-Skills) into .claude/skills/capture in your project. Claude Code loads it when a task matches its description.
Run `npx skills add borghei/Claude-Skills --skill capture -a codex`. Or copy the skill folder (personal-productivity/capture in borghei/Claude-Skills) into .agents/skills/capture in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add borghei/Claude-Skills --skill capture -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/capture, .gemini/skills/capture, .github/skills/capture and .opencode/skills/capture in your project.
Going by SKILL.md and its folder, Capture needs Python for the scripts in its folder and the command-line tools its instructions call (python3). Our summary lists: Python 3.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Capture is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 3k tokens (SKILL.md is roughly 12k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 8.8k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Capture: Process Inbox (telegramdesktop/tdesktop, 33k stars), Continue (telegramdesktop/tdesktop, 33k stars), Garden Inbox (paperclipai/paperclip, 99k stars) and Career-Ops Gmail Lead Plugin (career-ops-hq/career-ops, 74k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
borghei (a GitHub user) maintains it in borghei/Claude-Skills, which has 881 GitHub stars. The repository holds 349 skills in this directory. The repository was last updated on October 7, 2026.
Source: borghei/Claude-Skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.