Cost Tracking
affaan-m/ECC
Track and report Claude Code token usage, spending, and budgets from the local ECC cost-tracker metrics log.
A skill your agent uses when tracking, creating, completing, or reviewing To-Dos
$ npx skills add bradfeld/ceos --skill ceos-todos -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install bradfeld/ceos ceos-todos --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/bradfeld/ceos.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/ceos-todos .claude/skills/ceos-todos && 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 "ceos-todos" agent skill from https://github.com/bradfeld/ceos/tree/main/skills/ceos-todos into .claude/skills/ceos-todos/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ceos-todos", 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/bradfeld/ceos/tree/main/skills/ceos-todosType 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 bradfeld/ceos --skill ceos-todos -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install bradfeld/ceos ceos-todos --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/bradfeld/ceos.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/ceos-todos .agents/skills/ceos-todos && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "ceos-todos" agent skill from https://github.com/bradfeld/ceos/tree/main/skills/ceos-todos into .agents/skills/ceos-todos/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ceos-todos", 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 bradfeld/ceos --skill ceos-todos -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install bradfeld/ceos ceos-todos --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/bradfeld/ceos.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/ceos-todos .cursor/skills/ceos-todos && 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 "ceos-todos" agent skill from https://github.com/bradfeld/ceos/tree/main/skills/ceos-todos into .cursor/skills/ceos-todos/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ceos-todos", 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/bradfeld/ceos.git --path skills/ceos-todos--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 bradfeld/ceos --skill ceos-todos -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install bradfeld/ceos ceos-todos --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/bradfeld/ceos.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/ceos-todos .gemini/skills/ceos-todos && 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 "ceos-todos" agent skill from https://github.com/bradfeld/ceos/tree/main/skills/ceos-todos into .gemini/skills/ceos-todos/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ceos-todos", 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 bradfeld/ceos ceos-todosInstalls 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 bradfeld/ceos --skill ceos-todos -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/bradfeld/ceos.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/ceos-todos .github/skills/ceos-todos && 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 "ceos-todos" agent skill from https://github.com/bradfeld/ceos/tree/main/skills/ceos-todos into .github/skills/ceos-todos/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ceos-todos", 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 bradfeld/ceos --skill ceos-todos -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install bradfeld/ceos ceos-todos --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/bradfeld/ceos.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/ceos-todos .opencode/skills/ceos-todos && 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 "ceos-todos" agent skill from https://github.com/bradfeld/ceos/tree/main/skills/ceos-todos into .opencode/skills/ceos-todos/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ceos-todos", 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.
ceos-todosA skill your agent uses when tracking, creating, completing, or reviewing To-Dos
Ceos Todos is an agent skill from bradfeld/ceos. Use when tracking, creating, completing, or reviewing To-Dos
Its SKILL.md is about 3.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
The repository describes itself as: EOS (Entrepreneurial Operating System) skills for Claude Code. Run your business on EOS with AI. The licence is MIT.
12 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit bdd5f01. 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.
Shell commands in SKILL.md call:
gitFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.
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.
Ceos Todos loads about 3.2k tokens when it runs. Until then it costs about 18 tokens; SKILL.md has 1,569 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); files beside SKILL.md are not scanned.
The full file from bradfeld/ceos at commit bdd5f01, republished under its MIT licence (© bradfeld). 1,569 words, ~3,179 tokens.
.claude/skills/ceos-todos/SKILL.md (or your agent's skills folder).Track To-Dos — the concrete actions that bridge meetings and execution. Every To-Do has one owner, a due date, and a source. EOS teams target 90%+ weekly completion rate.
Search upward from the current directory for the .ceos marker file. This file marks the root of the CEOS repository.
If .ceos is not found, stop and tell the user: "Not in a CEOS repository. Clone your CEOS repo and run setup.sh first."
Sync before use: Once you find the CEOS root, run git -C <ceos_root> pull --ff-only --quiet 2>/dev/null to get the latest data from teammates. If it fails (conflict or offline), continue silently with local data.
| File | Purpose |
|---|---|
data/todos/ | To-Do files (one file per To-Do) |
templates/todo.md | Template for new To-Do files |
Each To-Do is a markdown file with YAML frontmatter:
id: todo-001
title: "Send revised proposal to Acme"
owner: "brad"
due: "2026-02-20"
status: open # open | complete
source: l10 # l10 | ids | quarterly | adhoc
created: "2026-02-13"
completed_on: "" # filled when status → completeStatus values:
open — not yet donecomplete — done (binary — no partial credit in EOS)Source values:
l10 — created during an L10 meetingids — created during IDS issue resolutionquarterly — created during a Quarterly Conversationadhoc — created outside of a meeting contextOverdue: A To-Do is overdue if status: open and due is before today's date. This is computed when displaying — not stored as a status.
File naming: todo-NNN-slug.md where NNN is a zero-padded ID and slug is the title slugified (lowercase, hyphens, no special characters).
When the user asks to see their To-Dos or check what's open.
Read all files in data/todos/. Parse the YAML frontmatter for each file.
If the directory doesn't exist or is empty: "No To-Dos yet. Use this skill to create one, or they'll be created during L10 meetings and IDS sessions."
By default, show only status: open To-Dos. If the user asks for "all to-dos" or "show completed", include status: complete as well.
For each open To-Do, compare due to today's date:
due < today: mark as overdue, calculate days overduedue is today: mark as "due today"due is in the future: show days remainingFlag To-Dos that are 30+ days overdue with a warning — these should be discussed in the next L10 (drop them or recommit with a new deadline).
Group by owner, sorted by due date within each group:
Open To-Dos (7 total, 2 overdue)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Brad (3 to-dos):
todo-003 Send revised proposal due: Feb 20 3 days left
todo-007 Review hiring pipeline due: Feb 18 1 day left
todo-001 Update onboarding doc due: Feb 10 ⚠️ 4 days overdue
Daniel (2 to-dos):
todo-005 Fix dashboard report due: Feb 22 8 days left
todo-004 Schedule vendor call due: Feb 15 due today
Sarah (2 to-dos):
todo-006 Draft Q2 budget due: Feb 28 14 days left
todo-002 Send partnership agreement due: Feb 12 ⚠️ 2 days overdueShow summary statistics:
Summary: 7 open | 2 overdue | 3 ownersWhen the user wants to add a new To-Do.
Ask for each field:
If the user is creating multiple To-Dos (e.g., from an L10 meeting), collect all of them before writing files.
Read existing To-Do files in data/todos/. Find the highest todo-NNN ID and increment. If no files exist, start at todo-001.
Create the directory data/todos/ if it doesn't exist.
Convert the title to a filename slug:
Use templates/todo.md as the template. Fill in:
Show the complete file before writing. Ask: "Create this To-Do?"
Write to data/todos/todo-NNN-slug.md.
Ask: "Create another To-Do, or done for now?"
When finished, display a summary of all created To-Dos:
Created 3 To-Dos:
todo-008 Send revised proposal brad due: Feb 20 [l10]
todo-009 Fix dashboard report daniel due: Feb 22 [l10]
todo-010 Draft Q2 budget sarah due: Feb 28 [l10]When the user wants to mark To-Do(s) as done.
List all open To-Dos (same as List mode, filtered to status: open).
If no open To-Dos exist: "No open To-Dos to complete. Nice work!"
Ask which To-Do(s) to mark complete. Accept:
For each selected To-Do:
status: completecompleted_on: "YYYY-MM-DD" (today's date)- YYYY-MM-DD: CompletedAfter completing all selected To-Dos, show:
Completed 2 To-Dos:
✓ todo-003 Send revised proposal (was due: Feb 20, completed: Feb 18 — 2 days early)
✓ todo-007 Review hiring pipeline (was due: Feb 18, completed: Feb 18 — on time)
Remaining open: 5When the user wants to check the team's To-Do completion rate — typically during or after an L10 meeting.
Default to the last 7 days. If the user specifies a range (e.g., "last month", "since January"), adjust accordingly.
Read all files in data/todos/. Categorize:
status: complete AND completed_on falls within the time rangestatus: open AND due falls within (or before) the time rangestatus: open AND due is after the time range endCompletion Rate = Completed / (Completed + Overdue) × 100Only count To-Dos whose due date falls within or before the review period. To-Dos with future due dates are not yet countable.
To-Do Review — Feb 7-14, 2026
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Completion Rate: 85% (target: 90%+)
Completed (6):
✓ todo-001 Update onboarding doc brad completed Feb 10
✓ todo-002 Send partnership agreement sarah completed Feb 12
✓ todo-004 Schedule vendor call daniel completed Feb 15
✓ todo-008 Send revised proposal brad completed Feb 14
✓ todo-009 Fix dashboard report daniel completed Feb 13
✓ todo-010 Draft Q2 budget sarah completed Feb 14
Overdue (1):
✗ todo-005 Update pricing page brad due Feb 12 (2 days overdue)
Still Open (2 — not yet due):
• todo-011 Prepare board deck brad due Feb 21
• todo-012 Review vendor contracts daniel due Feb 20Analyze the data for actionable patterns:
List: Owner-grouped table of open To-Dos with due dates and overdue indicators. Create: Complete To-Do file preview before writing. Summary table after creation. Complete: Diff for each To-Do being completed. Summary with timing (early/on-time/late). Review: Completion rate report with completed, overdue, and still-open sections. Pattern analysis.
data/todos/. Don't combine multiple To-Dos into one file.data/todos/ before generating a new ID. Never reuse IDs — even if a file was deleted, use the next sequential number.data/todos/ with status: complete. They're the audit trail for completion rate analytics.ceos-l10, ceos-ids, and ceos-quarterly when relevant, but let the user decide when to switch workflows.ceos-rocks."data/todos/. To-Dos embedded in old L10 meeting notes are not counted. The Review mode should note this if the user asks about discrepancies.data/todos/ as the source of truth. Use ceos-todos List mode to show open To-Dos and Complete mode to mark items done during the meeting.ceos-todos Create mode with source: l10.ceos-ids, the Solve step creates To-Dos with owners and due dates. These should be tracked in data/todos/ via ceos-todos Create mode with source: ids.ceos-todos Create mode with source: quarterly.Important: These integrations are suggestions, not automatic. The user controls the workflow. During an L10, the facilitator decides when and how to use each skill. Don't auto-create To-Dos — always let the user initiate.
© bradfeld, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/ceos-todos of bradfeld/ceos.
Open the folder on GitHubat commit bdd5f01
Ceos Todos 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 |
|---|---|---|---|---|---|---|
| Ceos Todos this skillbradfeld/ceos | 156 | — | ~3.2k | Automated safety check: Pass | MIT | |
| Cost Trackingaffaan-m/ECC | 276k | 1 repos | ~1.3k | Automated safety check: Pass | MIT | |
| TrackingBuilderIO/agent-native | 7.1k | — | ~8k | Automated safety check: Pass | None | |
| Time Trackingsickn33/agentic-awesome-skills | 47k | 1 repos | ~3.8k | Automated safety check: Pass | MIT | |
| Horizon Trackruvnet/ruflo | 74k | — | ~744 | Automated safety check: Notes | MIT | |
| Cost Trackruvnet/ruflo | 74k | — | ~773 | Automated safety check: Notes | MIT |
affaan-m/ECC
Track and report Claude Code token usage, spending, and budgets from the local ECC cost-tracker metrics log.
BuilderIO/agent-native
Server-side analytics tracking with pluggable providers. An agent skill from BuilderIO/agent-native.
sickn33/agentic-awesome-skills
Time entry register: employee, project, client, task, hours, billable flag, rate and amount, invoice and approver.
ruvnet/ruflo
Track long-horizon objectives across multiple sessions with milestone checkpoints, progress persistence, and drift detection
ruvnet/ruflo
Auto-capture per-session token usage from the Claude Code session jsonl and persist to the cost-tracking namespace
alirezarezvani/claude-skills
Set up, audit, and debug analytics tracking implementation — GA4, Google Tag Manager, event taxonomy, conversion tracking, and data quality.
bradfeld/ceos
A skill your agent uses when viewing, updating, or auditing the Accountability Chart — seats, owners, and roles
bradfeld/ceos
A skill your agent uses when managing daily operational delegation through The Stack and structured leader-assistant standups
bradfeld/ceos
A skill your agent uses when managing the rolling market calendar - conferences, launches, fundraising milestones, partner events, and team constraints
bradfeld/ceos
A skill your agent uses when assessing and optimizing the 8 financial levers that drive cash flow and profitability
bradfeld/ceos
A skill your agent uses when taking a Clarity Break — stepping back from day-to-day work for strategic thinking time
bradfeld/ceos
A skill your agent uses when you want a quick snapshot of overall business health across all EOS components
A skill your agent uses when tracking, creating, completing, or reviewing To-Dos. Ceos Todos is an agent skill from bradfeld/ceos.
Ceos Todos fits situations like: reviewing To-Dos.
Run `npx skills add bradfeld/ceos --skill ceos-todos -a claude-code`. Or copy the skill folder (skills/ceos-todos in bradfeld/ceos) into .claude/skills/ceos-todos in your project. Claude Code loads it when a task matches its description.
Run `npx skills add bradfeld/ceos --skill ceos-todos -a codex`. Or copy the skill folder (skills/ceos-todos in bradfeld/ceos) into .agents/skills/ceos-todos 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 bradfeld/ceos --skill ceos-todos -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ceos-todos, .gemini/skills/ceos-todos, .github/skills/ceos-todos and .opencode/skills/ceos-todos in your project.
Going by SKILL.md and its folder, Ceos Todos needs the command-line tools its instructions call (git).
SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. 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. Review the folder before installing.
Ceos Todos is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.2k tokens (SKILL.md is roughly 13k 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 Ceos Todos: Cost Tracking (affaan-m/ECC, 276k stars), Tracking (BuilderIO/agent-native, 7.1k stars), Time Tracking (sickn33/agentic-awesome-skills, 47k stars) and Horizon Track (ruvnet/ruflo, 74k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
bradfeld (a GitHub user) maintains it in bradfeld/ceos, which has 156 GitHub stars. The repository holds 23 skills in this directory. The repository was last updated on September 13, 2026.
Source: bradfeld/ceos on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.