Agent skill

Ceos Todos

by bradfeld in bradfeld/ceos

A skill your agent uses when tracking, creating, completing, or reviewing To-Dos

MITAuto-check passed

Install Ceos Todos

skills CLI
$ npx skills add bradfeld/ceos --skill ceos-todos -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install bradfeld/ceos ceos-todos --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ 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-src

Use ~/.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/

Facts

Skill name
ceos-todos
GitHub stars
156
Token cost
~3.2k tokens
SKILL.md length
1,569 words
Files
1
Skills in repo
23
Repo updated
First seen
Licence
MIT

At a glance

A skill your agent uses when tracking, creating, completing, or reviewing To-Dos

  • Works in 12 steps: Read All To-Dos → Filter → Compute Overdue → …
  • Reviewing To-Dos
  • SKILL.md covers When to Use, Context, Process and Output Format, plus 2 more sections
  • Calls git

What it does

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.

When your agent uses it

  • Reviewing To-Dos

Example prompts

  • “/ceos-todos”

Workflow steps

12 steps, taken from the step headings in SKILL.md.

  1. Read All To-Dos
  2. Filter
  3. Compute Overdue
  4. Display
  5. Summary
  6. Collect Information
  7. Validate
  8. Generate the ID
  9. Slugify the Title
  10. Create the File
  11. Write
  12. Repeat or Finish

What it can do on your machine

Read from SKILL.md and the folder at commit bdd5f01. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    Shell commands in SKILL.md call:

    • git

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    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.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

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.

Always · name and description, kept in context so the agent knows when to use it
~18
When it runs · the whole SKILL.md, loaded when a task matches
~3.2k

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.

Safety

Auto-check passed

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.

SKILL.md

The full file from bradfeld/ceos at commit bdd5f01, republished under its MIT licence (© bradfeld). 1,569 words, ~3,179 tokens.

Download SKILL.mdSave it as .claude/skills/ceos-todos/SKILL.md (or your agent's skills folder).
name
ceos-todos
description
Use when tracking, creating, completing, or reviewing To-Dos
file-access
data/todos/, templates/todo.md
tools-used
Read, Write, Glob

ceos-todos

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.

When to Use

  • "Show my to-dos" or "what's on my list?"
  • "Create a to-do" or "add a to-do for [person]"
  • "Mark to-do done" or "complete [to-do]"
  • "To-do review" or "how's our completion rate?"
  • "What to-dos are overdue?"
  • "Open to-dos" or "what needs to get done this week?"
  • "To-do list" or "show all to-dos"
  • "Weekly to-do report" or "to-do scorecard"
  • "New to-do from L10" or "IDS to-do"
  • Any time someone commits to a concrete action with a deadline

Context

Finding the CEOS Repository

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.

Key Files
FilePurpose
data/todos/To-Do files (one file per To-Do)
templates/todo.mdTemplate for new To-Do files
To-Do File Format

Each To-Do is a markdown file with YAML frontmatter:

yaml
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 → complete

Status values:

  • open — not yet done
  • complete — done (binary — no partial credit in EOS)

Source values:

  • l10 — created during an L10 meeting
  • ids — created during IDS issue resolution
  • quarterly — created during a Quarterly Conversation
  • adhoc — created outside of a meeting context

Overdue: 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).

Process

Mode: List

When the user asks to see their To-Dos or check what's open.

Step 1: Read All To-Dos

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."

Step 2: Filter

By default, show only status: open To-Dos. If the user asks for "all to-dos" or "show completed", include status: complete as well.

Step 3: Compute Overdue

For each open To-Do, compare due to today's date:

  • If due < today: mark as overdue, calculate days overdue
  • If due is today: mark as "due today"
  • If due is in the future: show days remaining

Flag 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).

Step 4: Display

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 overdue
Step 5: Summary

Show summary statistics:

Summary: 7 open | 2 overdue | 3 owners

Mode: Create

When the user wants to add a new To-Do.

Step 1: Collect Information

Ask for each field:

  1. Title — "What needs to be done?" (short, specific, action-oriented)
  2. Owner — "Who owns this?" (one person — never "the team")
  3. Due date — "When is this due?" (specific date, usually within 7 days for L10 To-Dos)
  4. Source — "Where did this come from?" (l10, ids, quarterly, or adhoc)

If the user is creating multiple To-Dos (e.g., from an L10 meeting), collect all of them before writing files.

Step 2: Validate
  • Title required. If empty, ask again.
  • Owner required. If empty or "the team", explain: "Every To-Do needs one owner — who's accountable?"
  • Due date required. If empty, explain: "Every To-Do needs a deadline. When is this due?"
  • Due date sanity check. If more than 14 days out, note: "Most EOS To-Dos are 7-day actions. Is this really a To-Do, or might it be a Rock?"
Step 3: Generate the ID

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.

Step 4: Slugify the Title

Convert the title to a filename slug:

  • Lowercase
  • Replace spaces with hyphens
  • Remove special characters
  • Truncate to 50 characters
Step 5: Create the File

Use templates/todo.md as the template. Fill in:

  • Frontmatter: id, title, owner, due, status=open, source, created=today
  • Body: description from the user's input

Show the complete file before writing. Ask: "Create this To-Do?"

Step 6: Write

Write to data/todos/todo-NNN-slug.md.

Step 7: Repeat or Finish

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]

Mode: Complete

When the user wants to mark To-Do(s) as done.

Step 1: Show Open To-Dos

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!"

Step 2: Select

Ask which To-Do(s) to mark complete. Accept:

  • By ID: "todo-003"
  • By title match: "the proposal one"
  • Multiple: "todo-003 and todo-007"
  • All: "all of them" (confirm before proceeding)
Step 3: Update Each File

For each selected To-Do:

  1. Read the file
  2. Update frontmatter:
    • status: complete
    • completed_on: "YYYY-MM-DD" (today's date)
  3. Add a note: - YYYY-MM-DD: Completed
  4. Show the diff (frontmatter changes + note addition)
  5. Ask: "Mark this To-Do complete?"
  6. Write the file
Step 4: Summary

After 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: 5

Mode: Review

When the user wants to check the team's To-Do completion rate — typically during or after an L10 meeting.

Step 1: Determine Time Period

Default to the last 7 days. If the user specifies a range (e.g., "last month", "since January"), adjust accordingly.

Step 2: Read All To-Dos

Read all files in data/todos/. Categorize:

  • Completed in period: status: complete AND completed_on falls within the time range
  • Overdue in period: status: open AND due falls within (or before) the time range
  • Still open (future): status: open AND due is after the time range end
Show full SKILL.md (605 more words)Show less
Step 3: Calculate Completion Rate
Completion Rate = Completed / (Completed + Overdue) × 100

Only count To-Dos whose due date falls within or before the review period. To-Dos with future due dates are not yet countable.

Step 4: Display Report
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 20
Step 5: Patterns and Flags

Analyze the data for actionable patterns:

  • Below 90% target: "Completion rate is 85%. Below the 90% EOS target. Consider: are there too many To-Dos, or is the team overcommitted?"
  • Specific owner below average: "[Person] completed 2/4 (50%). Worth discussing — are they overloaded?"
  • Source patterns: "4 of 6 overdue To-Dos came from IDS. Are IDS actions being set with realistic timelines?"
  • Chronic overdue (same To-Do overdue 2+ weeks): "todo-005 has been overdue for 14 days. Either do it, drop it, or turn it into a Rock."

Output Format

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.

Guardrails

  • Always show diff before writing. Never create or modify a To-Do file without showing the content and getting approval.
  • Owner required. Every To-Do has exactly one owner. Not "the team", not "TBD", not blank. If someone won't commit to owning it, it's not a real To-Do.
  • Due date required. Every To-Do has a deadline. No deadline = no accountability. If the user doesn't specify a date, ask for one.
  • One To-Do per file. Each To-Do gets its own file in data/todos/. Don't combine multiple To-Dos into one file.
  • ID uniqueness. Always scan all existing files in data/todos/ before generating a new ID. Never reuse IDs — even if a file was deleted, use the next sequential number.
  • Don't delete To-Do files. Completed To-Dos stay in data/todos/ with status: complete. They're the audit trail for completion rate analytics.
  • Don't auto-invoke other skills. Mention ceos-l10, ceos-ids, and ceos-quarterly when relevant, but let the user decide when to switch workflows.
  • Warn on overload. If one person has 10+ open To-Dos, warn: "That's a lot of open To-Dos. Consider prioritizing or pushing some to a future week."
  • To-Dos vs Rocks. If a To-Do has a due date more than 14 days out or describes a large initiative, suggest: "This sounds like it might be a Rock rather than a To-Do. Rocks are 90-day priorities managed by ceos-rocks."
  • Completion rate only reflects 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.
  • Source field is immutable. Once set, don't change the source — it's the audit trail for where the To-Do originated.
  • Sensitive data warning. On first use, remind the user: "To-Dos may contain sensitive action items and personnel references. Use a private repo."

Integration Notes

L10 Meetings (ceos-l10)
  • Section 5 — To-Do Review: During L10 meetings, the To-Do Review section should reference 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.
  • Section 7 — Conclude: New To-Dos created during the L10 should be tracked via ceos-todos Create mode with source: l10.
IDS (ceos-ids)
  • When an Issue is solved in 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.
Quarterly Conversations (ceos-quarterly)
  • Action items from Quarterly Conversations should be created as To-Dos via 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

Files

Just SKILL.md in skills/ceos-todos of bradfeld/ceos.

Open the folder on GitHubat commit bdd5f01

Compare with similar skills

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.

Ceos Todos compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Ceos Todos this skillbradfeld/ceos156—~3.2kAutomated safety check: PassMIT
Cost Trackingaffaan-m/ECC276k1 repos~1.3kAutomated safety check: PassMIT
TrackingBuilderIO/agent-native7.1k—~8kAutomated safety check: PassNone
Time Trackingsickn33/agentic-awesome-skills47k1 repos~3.8kAutomated safety check: PassMIT
Horizon Trackruvnet/ruflo74k—~744Automated safety check: NotesMIT
Cost Trackruvnet/ruflo74k—~773Automated safety check: NotesMIT

Similar skills

  • Cost Tracking

    affaan-m/ECC

    Track and report Claude Code token usage, spending, and budgets from the local ECC cost-tracker metrics log.

    276k GitHub starsUsed in 1 repo~1.3k tokens
    AI & LLM EngineeringAuto-check passed
  • Tracking

    BuilderIO/agent-native

    Server-side analytics tracking with pluggable providers. An agent skill from BuilderIO/agent-native.

    7.1k GitHub stars~8k tokensUpdated today
    Backend & APIsAuto-check passed
  • Time Tracking

    sickn33/agentic-awesome-skills

    Time entry register: employee, project, client, task, hours, billable flag, rate and amount, invoice and approver.

    47k GitHub starsUsed in 1 repo~3.8k tokens
    Productivity & AutomationAuto-check passed
  • Horizon Track

    ruvnet/ruflo

    Track long-horizon objectives across multiple sessions with milestone checkpoints, progress persistence, and drift detection

    74k GitHub stars~744 tokensUpdated today
    Product & Project ManagementAuto-check: notes
  • Cost Track

    ruvnet/ruflo

    Auto-capture per-session token usage from the Claude Code session jsonl and persist to the cost-tracking namespace

    74k GitHub stars~773 tokensUpdated today
    AI & LLM EngineeringAuto-check: notes
  • Analytics Tracking

    alirezarezvani/claude-skills

    Set up, audit, and debug analytics tracking implementation — GA4, Google Tag Manager, event taxonomy, conversion tracking, and data quality.

    28k GitHub starsUsed in 1 repo~3.8k tokens
    Data & AnalyticsAuto-check passed

More from bradfeld/ceos

All 23 skills in this repo
  • Ceos Accountability

    bradfeld/ceos

    A skill your agent uses when viewing, updating, or auditing the Accountability Chart — seats, owners, and roles

    156 GitHub stars~3.4k tokensUpdated 26 days ago
    Auto-check passed
  • Ceos Assistance

    bradfeld/ceos

    A skill your agent uses when managing daily operational delegation through The Stack and structured leader-assistant standups

    156 GitHub stars~3.9k tokensUpdated 26 days ago
    Auto-check passed
  • Ceos Calendar

    bradfeld/ceos

    A skill your agent uses when managing the rolling market calendar - conferences, launches, fundraising milestones, partner events, and team constraints

    156 GitHub stars~2k tokensUpdated 26 days ago
    Auto-check passed
  • Ceos Cashflow

    bradfeld/ceos

    A skill your agent uses when assessing and optimizing the 8 financial levers that drive cash flow and profitability

    156 GitHub stars~3.2k tokensUpdated 26 days ago
    Auto-check passed
  • Ceos Clarity

    bradfeld/ceos

    A skill your agent uses when taking a Clarity Break — stepping back from day-to-day work for strategic thinking time

    156 GitHub stars~3k tokensUpdated 26 days ago
    Auto-check passed
  • Ceos Dashboard

    bradfeld/ceos

    A skill your agent uses when you want a quick snapshot of overall business health across all EOS components

    156 GitHub stars~3.2k tokensUpdated 26 days ago
    Auto-check passed

Questions about Ceos Todos

What does Ceos Todos do?

A skill your agent uses when tracking, creating, completing, or reviewing To-Dos. Ceos Todos is an agent skill from bradfeld/ceos.

When should I use Ceos Todos?

Ceos Todos fits situations like: reviewing To-Dos.

How do I install Ceos Todos in Claude Code?

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.

How do I install Ceos Todos in Codex?

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.

Can I use Ceos Todos in Cursor, Gemini CLI or GitHub Copilot?

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.

What does Ceos Todos need to run?

Going by SKILL.md and its folder, Ceos Todos needs the command-line tools its instructions call (git).

Does Ceos Todos access the network?

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.

Is Ceos Todos safe to install?

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.

What licence does Ceos Todos use?

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.

How many tokens does Ceos Todos use?

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.

What are the alternatives to Ceos Todos?

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.

Who maintains Ceos Todos?

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.