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.
Surface the most valuable next action by combining task stack, queue state, inbox pressure, health, and goals.
$ npx skills add agenticnotetaking/arscontexta --skill next -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install agenticnotetaking/arscontexta next --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/agenticnotetaking/arscontexta.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skill-sources/next .claude/skills/next && 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 "next" agent skill from https://github.com/agenticnotetaking/arscontexta/tree/main/skill-sources/next into .claude/skills/next/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "next", 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/agenticnotetaking/arscontexta/tree/main/skill-sources/nextType 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 agenticnotetaking/arscontexta --skill next -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install agenticnotetaking/arscontexta next --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/agenticnotetaking/arscontexta.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skill-sources/next .agents/skills/next && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "next" agent skill from https://github.com/agenticnotetaking/arscontexta/tree/main/skill-sources/next into .agents/skills/next/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "next", 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 agenticnotetaking/arscontexta --skill next -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install agenticnotetaking/arscontexta next --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/agenticnotetaking/arscontexta.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skill-sources/next .cursor/skills/next && 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 "next" agent skill from https://github.com/agenticnotetaking/arscontexta/tree/main/skill-sources/next into .cursor/skills/next/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "next", 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/agenticnotetaking/arscontexta.git --path skill-sources/next--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 agenticnotetaking/arscontexta --skill next -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install agenticnotetaking/arscontexta next --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/agenticnotetaking/arscontexta.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skill-sources/next .gemini/skills/next && 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 "next" agent skill from https://github.com/agenticnotetaking/arscontexta/tree/main/skill-sources/next into .gemini/skills/next/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "next", 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 agenticnotetaking/arscontexta nextInstalls 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 agenticnotetaking/arscontexta --skill next -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/agenticnotetaking/arscontexta.git skills-src && mkdir -p .github/skills && cp -r skills-src/skill-sources/next .github/skills/next && 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 "next" agent skill from https://github.com/agenticnotetaking/arscontexta/tree/main/skill-sources/next into .github/skills/next/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "next", 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 agenticnotetaking/arscontexta --skill next -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install agenticnotetaking/arscontexta next --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/agenticnotetaking/arscontexta.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skill-sources/next .opencode/skills/next && 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 "next" agent skill from https://github.com/agenticnotetaking/arscontexta/tree/main/skill-sources/next into .opencode/skills/next/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "next", 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.
nextSurface the most valuable next action by combining task stack, queue state, inbox pressure, health, and goals.
Next is an agent skill from agenticnotetaking/arscontexta. Surface the most valuable next action by combining task stack, queue state, inbox pressure, health, and goals. Recommends one specific action with rationale. Triggers on "/next", "what should I do", "what's next".
Its SKILL.md is about 4.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file (for example `skill.json`).
It sits in Productivity & Automation, covering Email management. The repository describes itself as: Claude Code plugin that generates individualized knowledge systems from conversation. You describe how you think and work, have a conversation and get a complete second brain as… The licence is MIT.
8 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 2acfd5c. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
ReadGrepGlobBashFrom allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
jqFrom 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.
Next loads about 4.9k tokens when it runs. Until then it costs about 55 tokens; SKILL.md has 1,943 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 noted patterns worth knowing about, such as sudo or a known installer.
allowed-tools: Read, Grep, Glob, BashAutomated 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); files beside SKILL.md are not scanned.
The full file from agenticnotetaking/arscontexta at commit 2acfd5c, republished under its MIT licence (© agenticnotetaking). 1,943 words, ~4,887 tokens.
.claude/skills/next/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Read these files to configure domain-specific behavior:
ops/derivation-manifest.md — vocabulary mapping, domain context
vocabulary.notes for the notes folder namevocabulary.inbox for the inbox folder namevocabulary.note for the note type name in outputvocabulary.topic_map for MOC referencesvocabulary.cmd_reduce for process/extract commandvocabulary.cmd_reflect for connection-finding commandvocabulary.cmd_reweave for backward-pass commandvocabulary.rethink for rethink command nameops/config.yaml — thresholds, processing preferences
self_evolution.observation_threshold (default: 10)self_evolution.tension_threshold (default: 5)If these files don't exist, use universal defaults and generic command names.
INVARIANT: /next recommends, it does not execute. Present one recommendation with rationale. The user decides what to do. This prevents cognitive outsourcing where the system makes all work decisions and the user becomes a rubber stamp.
Execute these steps IN ORDER:
Read ops/derivation-manifest.md (or fall back to ops/derivation.md) for domain vocabulary mapping. All output must use domain-native terms. If neither file exists, use universal terms (notes, inbox, topic map, etc).
Before collecting state, evaluate all maintenance conditions and reconcile the queue. This ensures maintenance tasks are current before the recommendation engine runs.
Read queue file (ops/queue/queue.json or ops/queue.yaml). If schema_version < 3, migrate:
maintenance_conditions section with default thresholdspriority field to existing tasks (default: "pipeline")schema_version: 3For each condition in maintenance_conditions:
| Condition | Evaluation Method |
|---|---|
| orphan_notes | For each note in {vocabulary.notes}/, count incoming [[links]]. Zero = orphan. |
| dangling_links | Extract all [[links]], verify targets exist as files. Missing = dangling. |
| inbox_pressure | Count *.md in {vocabulary.inbox}/. |
| observation_accumulation | Count status: pending in ops/observations/. |
| tension_accumulation | Count status: pending or open in ops/tensions/. |
| pipeline_stalled | Queue tasks with status: pending unchanged across sessions. |
| unprocessed_sessions | Count files in ops/sessions/ without mined: true. |
| moc_oversize | For each topic map, count linked notes. |
| stale_notes | Notes not modified in 30+ days with < 2 links. |
| low_link_density | Average link count across all notes. |
| methodology_drift | Compare config.yaml modification time vs newest ops/methodology/ note modification time. If config is newer, methodology may be stale. |
Create maintenance task:
TIMESTAMP=$(date -u +"%Y-%m-%dT%H:%M:%SZ")
MAINT_MAX=$(jq '[.tasks[] | select(.id | startswith("maint-")) | .id | ltrimstr("maint-") | tonumber] | max // 0' ops/queue/queue.json)
NEXT_MAINT=$((MAINT_MAX + 1))
jq --arg id "maint-$(printf '%03d' $NEXT_MAINT)" \
--arg priority "{priority}" \
--arg key "{condition_key}" \
--arg target "{description}" \
--arg action "{recommended command}" \
--arg ts "$TIMESTAMP" \
'.tasks += [{"id": $id, "type": "maintenance", "priority": $priority, "status": "pending", "condition_key": $key, "target": $target, "action": $action, "auto_generated": true, "created": $ts}]' \
ops/queue/queue.json > tmp.json && mv tmp.json ops/queue/queue.jsonAuto-close it:
TIMESTAMP=$(date -u +"%Y-%m-%dT%H:%M:%SZ")
jq --arg key "{condition_key}" --arg ts "$TIMESTAMP" \
'(.tasks[] | select(.condition_key == $key and .status == "pending")).status = "done" |
(.tasks[] | select(.condition_key == $key and .status == "pending")).completed = $ts' \
ops/queue/queue.json > tmp.json && mv tmp.json ops/queue/queue.jsonUpdate the target description (specifics may have changed):
jq --arg key "{condition_key}" --arg target "{new description}" \
'(.tasks[] | select(.condition_key == $key and .status == "pending")).target = $target' \
ops/queue/queue.json > tmp.json && mv tmp.json ops/queue/queue.jsonGather all signals. Run independent checks in parallel where possible. Record each signal even if the check returns zero — absence of signal is itself informative.
| Signal | How to Check | What to Record |
|---|---|---|
| Task stack | Read ops/tasks.md — current priorities and open items | Top items, open count, any deadlines |
| Queue state | Read ops/queue.yaml or ops/queue/queue.json — pending pipeline tasks | Total pending, by phase (create, reflect, reweave, verify), blocked phases |
| Inbox pressure | Count *.md files in {vocabulary.inbox}/, find oldest by mtime | Count per subdirectory, age of oldest item in days |
| Note count | Count *.md in {vocabulary.notes}/ | Total notes for context |
| Orphan notes | For each note, grep for [[filename]] across all files — zero hits = orphan | Count, first 5 names |
| Dangling links | Extract all [[links]] from notes/, verify each target file exists | Count, first 5 targets |
| Stale notes | Notes not modified recently AND with low link density (< 2 links) | Count |
| Goals | Read self/goals.md or ops/goals.md — current priorities, active threads | Priority list, active research directions |
| Observations | Count files with status: pending in ops/observations/ | Count |
| Tensions | Count files with status: pending or status: open in ops/tensions/ | Count |
| Methodology | Check ops/methodology/ for recent captures (files modified in last 7 days) | Count of recent, total count |
| Health | Read most recent report in ops/health/ — note timestamp and issues | Last run date, issue count, any critical issues |
| Sessions | Check ops/sessions/ for files without mined: true in frontmatter | Count of unmined sessions |
| Recent /next | Read ops/next-log.md (if exists) — last 3 recommendations | Previous suggestions to avoid repetition |
Adaptation rules:
Signal collection commands:
# Inbox pressure (adapt path to vocabulary)
INBOX_COUNT=$(find {vocabulary.inbox}/ -name "*.md" -maxdepth 2 2>/dev/null | wc -l | tr -d ' ')
OLDEST_INBOX=$(find {vocabulary.inbox}/ -name "*.md" -maxdepth 2 -exec stat -f "%m %N" {} \; 2>/dev/null | sort -n | head -1)
# Note count
NOTE_COUNT=$(ls -1 {vocabulary.notes}/*.md 2>/dev/null | wc -l | tr -d ' ')
# Pending observations
OBS_COUNT=$(grep -rl '^status: pending' ops/observations/ 2>/dev/null | wc -l | tr -d ' ')
# Pending tensions
TENSION_COUNT=$(grep -rl '^status: pending\|^status: open' ops/tensions/ 2>/dev/null | wc -l | tr -d ' ')
# Unmined sessions
SESSION_COUNT=$(grep -rL '^mined: true' ops/sessions/*.md 2>/dev/null | wc -l | tr -d ' ')Evaluate every signal against consequence speed — how fast does inaction degrade the system?
| Speed | Signals | Threshold | Why This Priority |
|---|---|---|---|
| Session | Inbox > 5 items, orphan notes (any), dangling links (any), 10+ pending observations, 5+ pending tensions, unprocessed sessions > 3 | Immediate — these degrade work quality right now | Orphans are invisible to traversal. Dangling links confuse navigation. Inbox pressure means lost ideas. Observation/tension thresholds mean the system is accumulating unprocessed friction. |
| Multi-session | Pipeline queue backlog > 10, research gaps identified in goals, stale notes > 10, inbox items aging > 7 days, methodology captures > 5 in same category | Soon — these compound over days | Unfinished pipeline batches block downstream connections. Stale notes represent decaying knowledge. Aging inbox means capture is outpacing processing. |
| Slow | Health check not run in 14+ days, {DOMAIN:topic map} oversized (>40 notes), link density below 2.0 average, low note count relative to time | Background — annoying but not blocking | These are maintenance tasks. Important for long-term health but not urgent. |
Threshold rule: 10+ pending observations OR 5+ pending tensions is ALWAYS session-priority. Recommend {DOMAIN:rethink} in this case.
Signal interaction rules:
Select the SINGLE most valuable action. The recommendation must be specific enough to execute immediately — a concrete command invocation, not a vague suggestion.
Priority cascade:
If ops/tasks.md has open items, recommend from the task stack. User-set priorities override all automated recommendations because:
Format: Recommend the specific task with context about why it was in the stack.
Read queue for maintenance tasks with priority: "session" and status: "pending". These represent vault health conditions that degrade THIS session.
Pick the highest-impact one:
Recommend the action field from the queue entry.
If no task stack items, pick the highest-impact session-priority signal:
| Signal | Recommendation | Rationale Template |
|---|---|---|
| Dangling links / orphans | /health or specific fix command | "You have [N] orphan notes invisible to traversal. Connecting them increases graph density and retrieval quality." |
| 10+ observations or 5+ tensions | /{DOMAIN:rethink} | "[N] pending observations have accumulated. Pattern detection requires processing this backlog to evolve the system." |
| Inbox > 5 items | /{DOMAIN:reduce} [specific file] | "Your inbox has [N] items (oldest: [age]). [File X] has the highest connection potential based on [reason]." |
| Unprocessed sessions > 3 | /remember --mine-sessions | "[N] sessions have uncaptured friction patterns. Mining them prevents methodology regressions." |
When recommending inbox processing: Choose the specific inbox item that aligns best with current goals or has the most connection potential to existing notes. Recommend a concrete file, not "process some inbox."
If no session-priority items:
| Signal | Recommendation | Rationale Template |
|---|---|---|
| Queue backlog > 10 | /ralph [N] | "[N] pipeline tasks are pending. Your newest {DOMAIN:notes} lack connections, which means they can't participate in synthesis." |
| Stale notes > 10 | /{DOMAIN:reweave} [specific note] | "[N] notes haven't been touched since [date]. [Note X] has the most connections and would benefit most from updating." |
| Research gaps | /{DOMAIN:reduce} [file aligned with goals] | "Your goals mention [topic] but your graph has few notes there. [Inbox item] addresses this gap." |
| Methodology convergence | /{DOMAIN:rethink} | "[N] methodology captures in the [category] area suggest a pattern worth elevating." |
When recommending reweaving: Choose the most-connected stale note (highest link density + oldest modification). Reweaving high-connectivity notes has the highest ripple effect.
If nothing pressing:
| Signal | Recommendation | Rationale Template |
|---|---|---|
| No recent health check | /health | "Last health check was [date]. Running one now catches structural issues before they compound." |
| Topic map oversized | Restructuring suggestion | "[Topic map X] has [N] notes. Splitting into sub-topic-maps improves navigation and reduces cognitive load." |
| Low link density | /{DOMAIN:reweave} on lowest-density note | "Your graph has an average link density of [N]. Reweaving sparse notes increases traversal paths." |
If all signals are healthy:
next
All signals healthy.
Inbox: 0 | Queue: 0 pending | Orphans: 0 | Dangling: 0
No urgent work detected.
Suggested: Explore a new direction from goals.md
or reweave older {DOMAIN:notes} to deepen the graph.Rationale is always mandatory. Every recommendation must explain:
Read ops/next-log.md (if it exists). Check the last 3 entries.
Deduplication rules:
next
State:
Inbox: [count] items (oldest: [age])
Queue: [count] pending ([phase breakdown])
Orphans: [count] | Dangling: [count]
Observations: [count] | Tensions: [count]
[any other decision-relevant signals]
Recommended: [specific command/action]
Rationale: [2-3 sentences — why this action,
how it connects to goals, what degrades if deferred]
After that: [second priority, if relevant]
[optional: alignment with goals.md priority]Command specificity is mandatory. Recommendations must be concrete invocations:
| Good | Bad |
|---|---|
/{DOMAIN:reduce} inbox/article-on-spaced-repetition.md | "process some inbox items" |
/ralph 5 | "work on the queue" |
/{DOMAIN:rethink} | "review your observations" |
/{DOMAIN:reweave} [[note title here]] | "update some old notes" |
State display rules:
Append to ops/next-log.md (create if missing):
## YYYY-MM-DD HH:MM
**State:** Inbox: [N] | Notes: [N] | Orphans: [N] | Dangling: [N] | Stale: [N] | Obs: [N] | Tensions: [N] | Queue: [N]
**Recommended:** [action]
**Rationale:** [one sentence]
**Priority:** session | multi-session | slowWhy log? The log serves three purposes:
Recommend capturing or reducing content. Maintenance is premature with < 5 notes — the graph does not have enough nodes for meaningful analysis.
next
State:
Notes: [N] — early stage vault
Recommended: Capture or /{DOMAIN:reduce} content
Rationale: Your graph has [N] notes. At this stage, adding
content matters more than maintaining structure. Health checks,
reweaving, and rethink become valuable after ~10 notes.Say so explicitly. Recommend exploratory work aligned with goals, or reflective work on older notes:
No urgent work detected. Consider:
- Exploring a research direction from goals.md
- Reweaving older {DOMAIN:notes} to deepen connections
- Reviewing and updating goals.md itselfRecommend creating self/goals.md or ops/goals.md first. Without priorities, recommendations lack grounding and the system cannot distinguish between "important to the user" and "detected by automation."
Recommended: Create ops/goals.md
Rationale: Without goals, /next can only recommend based on
automated detection. Goals let the system align recommendations
with what actually matters to you.Use universal vocabulary. Do not fail — /next should always produce a recommendation regardless of configuration state.
Skip queue checks silently. Not all vaults use the pipeline architecture — some rely on manual processing. Do not report "queue not found" as an issue.
When several signals are at session priority simultaneously, pick the one that unblocks the most downstream work:
If genuinely equal priority, pick the one the user has not been recommended recently (check next-log.md).
If ops/next-log.md has not been updated in 14+ days, the user may not be running /next regularly. Note this but do not make it a recommendation — /next is optional, not mandatory.
These are patterns that /next must avoid:
| Anti-Pattern | Why It Is Wrong | What to Do Instead |
|---|---|---|
| Recommending everything | Overwhelms the user, defeats the purpose of "single most valuable action" | Pick ONE. Mention a second only as "after that" |
| Vague recommendations | "Process inbox" gives no actionable starting point | Name the specific file, note, or command |
| Ignoring task stack | User-set priorities exist for a reason | Always check ops/tasks.md first |
| Repeating the same rec | If the user did not act on it, recommending it again is nagging | Deduplicate via next-log.md |
| Recommending maintenance too early | A 5-note vault does not need health checks | Scale recommendations to vault maturity |
| Cognitive outsourcing | Making all decisions for the user | Recommend and explain — never execute |
© agenticnotetaking, 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 1 other file in skill-sources/next of agenticnotetaking/arscontexta.
Open the folder on GitHubat commit 2acfd5c
Next 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 |
|---|---|---|---|---|---|---|
| Next this skillagenticnotetaking/arscontexta | 3.5k | — | ~4.9k | Automated safety check: Notes | 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 | 98k | — | ~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.
agenticnotetaking/arscontexta
Interactive knowledge graph analysis. An agent skill from agenticnotetaking/arscontexta.
agenticnotetaking/arscontexta
Research a topic and grow your knowledge graph. An agent skill from agenticnotetaking/arscontexta.
agenticnotetaking/arscontexta
Get research-backed architecture advice for your knowledge system.
agenticnotetaking/arscontexta
Show vault statistics and knowledge graph metrics. An agent skill from agenticnotetaking/arscontexta.
agenticnotetaking/arscontexta
Contextual guidance and command discovery. An agent skill from agenticnotetaking/arscontexta.
agenticnotetaking/arscontexta
End-to-end source processing -- seed, reduce, process all claims through reflect/reweave/verify, archive.
Categories
Surface the most valuable next action by combining task stack, queue state, inbox pressure, health, and goals. Next is an agent skill from agenticnotetaking/arscontexta. Surface the most valuable next action by combining task stack, queue state, inbox pressure, health, and goals.
Next fits situations like: what should I do; tasks that involve Email management.
Run `npx skills add agenticnotetaking/arscontexta --skill next -a claude-code`. Or copy the skill folder (skill-sources/next in agenticnotetaking/arscontexta) into .claude/skills/next in your project. Claude Code loads it when a task matches its description.
Run `npx skills add agenticnotetaking/arscontexta --skill next -a codex`. Or copy the skill folder (skill-sources/next in agenticnotetaking/arscontexta) into .agents/skills/next 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 agenticnotetaking/arscontexta --skill next -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/next, .gemini/skills/next, .github/skills/next and .opencode/skills/next in your project.
Going by SKILL.md and its folder, Next needs the command-line tools its instructions call (jq). Its frontmatter pre-approves these tools: Read, Grep, Glob, Bash.
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 notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Next is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.9k tokens (SKILL.md is roughly 20k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Next: Process Inbox (telegramdesktop/tdesktop, 33k stars), Continue (telegramdesktop/tdesktop, 33k stars), Garden Inbox (paperclipai/paperclip, 98k 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.
agenticnotetaking (a GitHub organization) maintains it in agenticnotetaking/arscontexta, which has 3,492 GitHub stars. The repository holds 25 skills in this directory. The repository was last updated on February 24, 2026.
Source: agenticnotetaking/arscontexta on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.