Agent skill

Build Signal Engine

by coleam00 in coleam00/skills

Build a personal signal engine from scratch - a system that reads every source someone cares about each day (changelogs and release notes, communities, feeds, videos, papers), makes a quick decision…

MITAuto-check passedDevelopment

Install Build Signal Engine

skills CLI
$ npx skills add coleam00/skills --skill build-signal-engine -a claude-code

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

GitHub CLI
$ gh skill install coleam00/skills build-signal-engine --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/coleam00/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/build-signal-engine .claude/skills/build-signal-engine && 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
build-signal-engine
GitHub stars
676
Token cost
~2.9k tokens
SKILL.md length
1,677 words
Files
8 (incl. references)
Skills in repo
34
Repo updated
First seen
Licence
MIT

At a glance

Build a personal signal engine from scratch - a system that reads every source someone cares about each day (changelogs and release notes, communities, feeds, videos, papers), makes a quick decision…

  • Works in 5 steps: Interview → The decision pass → The reading pass and the digest → …
  • The user wants to keep up with AI
  • SKILL.md covers Output discipline, The shape, Construction order and Stage 0. Interview, plus 7 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Build Signal Engine is an agent skill from coleam00/skills. Build a personal signal engine from scratch - a system that reads every source someone cares about each day (changelogs and release notes, communities, feeds, videos, papers), makes a quick decision on every item, lets an LLM read only what survives, and delivers one short digest. Interviews the user first to pin down what they need to keep up with, the sources where it actually shows up, and the one question that decides what is worth their time, then builds it one stage at a time into their own repo, proving…

Its SKILL.md is about 2.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 9 other files, including reference files (for example `references/decisions.md`, `references/digest.md` and `references/interview.md`).

It sits in Development, covering Changelog and release notes and Content marketing. The repository describes itself as: The agent skills I actually use to build software with coding agents. The PIV loop, planning, worktrees, and the meta-skills for building your own AI Layer. The licence is MIT.

When your agent uses it

  • The user wants to keep up with AI
  • Their field without doomscrolling
  • Build an AI news digest
  • A daily briefing

Example prompts

  • “something that reads everything and tells me what matters”
  • “/build-signal-engine”

Workflow steps

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

  1. Interview
  2. The decision pass
  3. The reading pass and the digest
  4. Delivery and schedule
  5. A week in shadow

What it can do on your machine

Read from SKILL.md and the folder at commit 847be08. 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

    No scripts in the folder and no shell commands in SKILL.md.

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

  • Network

    No URLs in SKILL.md.

    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

Build Signal Engine loads about 2.9k tokens when it runs, and up to ~9.3k if it reads all its reference files. Until then it costs about 246 tokens; SKILL.md has 1,677 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~246
When it runs · the whole SKILL.md, loaded when a task matches
~2.9k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~9.3k

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 coleam00/skills at commit 847be08, republished under its MIT licence (© coleam00). 1,677 words, ~2,868 tokens.

Download SKILL.mdSave it as .claude/skills/build-signal-engine/SKILL.md (or your agent's skills folder). This skill also uses 7 other files; get the full folder from GitHub.
name
build-signal-engine
description
Build a personal signal engine from scratch - a system that reads every source someone cares about each day (changelogs and release notes, communities, feeds, videos, papers), makes a quick decision on every item, lets an LLM read only what survives, and delivers one short digest. Interviews the user first to pin down what they need to keep up with, the sources where it actually shows up, and the one question that decides what is worth their time, then builds it one stage at a time into their own repo, proving each stage on real data. Agnostic about the coding agent, the decision model and where the data comes from. Use when the user wants to keep up with AI or their field without doomscrolling, build an AI news digest, a daily briefing, a content engine, a research or competitor monitor, a changelog watcher, or "something that reads everything and tells me what matters"; and when they mention signal vs noise, an information diet, or falling behind.
argument-hint
[optional: path/to/repo]
arguments
repo

Build a signal engine

What the user typed: $ARGUMENTS

If a path was given, it is the repo to build in; confirm it in one sentence. If not, ask whether to start a new folder or use the current one. Then go straight to Round 1.

A signal engine reads everything so its owner doesn't have to. Every morning it pulls from the places things actually happen, decides on every single item, hands an LLM only the few worth reading, and delivers one digest.

Keeping up is a filtering problem, not a reading problem. Reading more makes people feel more behind. The engine encodes the user's own filter and runs it on everything.

Build it into the user's repo. Do not hand them a plan. Every stage below ends with code committed and output from a real run they can look at.


Output discipline

The interview and the build are long. What you say is not.

MomentBudget
Between questionsNothing. Ask the next one.
Finishing a stageTwo lines: what now exists, with the real number from the run, and the next step.
A file you wroteOne line: its path.
Command outputNever paste it. The verdict and the number.

Never announce a plan before doing it, restate an answer as a paragraph, or explain why the skill works this way unless asked. The reasoning lives in references/, for you.


The shape

sources -> store (dedupe, stable ids) -> code filters (dates, numbers) -> decide on every item
        -> the LLM reads what survives -> digest -> delivered on a schedule

Two splits carry the whole design. Say each once, early, in one sentence:

  • Numbers in code, judgment in the decision pass, reading in the LLM. Dates, upvotes, view counts and "have I seen this" are code. "Is this new, is it for me" is a typed decision. Summarising and connecting is the LLM. Mixing them up is the most common bug.
  • The question is the policy. What the engine keeps is decided by the words of one or two questions written from the user's own examples. Changing the question changes the engine. There is no model setting that fixes a vague question.

Construction order

StageWhat exists at the endProof before moving on
0The interview, written downPROFILE.md the user agreed to
1One source, end to end into the storea real run: N items, all with stable ids
2Every sourceeach source's real count, and a re-run that adds ~0
3Code filtershow many each filter dropped
4The decision passtheir own keep/drop examples scored, misses listed
5The reading pass + digesta digest from today's real data
6Delivery + scheduleit ran once on its own
7A week in shadowthe user's marked-up misses, and the question revised

One source first, end to end, before adding the rest. A pipeline built source-wide but never run end to end fails at the join between stages, and finding that after twelve sources is twelve times the work.

Anything that bills per row is capped on every run and only runs on the daily schedule, never on a frequent scan.


Stage 0. Interview

Read references/interview.md and work through it. Three rounds:

  1. Three questions, one at a time, that decide the project: what they need to keep up with and what they would do differently if they knew on the day; something they missed or found out late, and where it first appeared; where the digest gets read and what they do with an item.
  2. Questions only they can answer, about things that already happened: the tools they use daily, where people using those tools talk, three items from last week they would have wanted and three they never want again, what is too old or too small to matter, and whether their sources come through one data platform or get picked per source.
  3. One message of defaults to confirm: schedule, stack, storage, caps, models, digest length, delivery.

Every question goes through the question tool (AskUserQuestion in Claude Code, or the equivalent), with two to four options drafted from what they have already said, one marked (Recommended) and first. It always carries free text, so nothing is lost. Never ask the user to design an artifact; they tell you what happened, you turn it into sources, filters and questions.

Write PROFILE.md from templates/PROFILE.md: the focus, the sources, the filters, the decision question(s) with their keep/drop examples, the digest format and delivery. Read it back as a proposal and get a yes before Stage 1.

When to refuse or shrink:

  • No focus ("everything in AI"): ask for the action instead. "What would you do differently if you knew?" If nothing changes what they do, they need fewer sources, not an engine.
  • Two or three sources: an RSS reader or email alerts beat a build. Say so.
  • A source whose terms forbid automated access and that has no API or permitted provider: leave it out and say why.

Stages 1-3. Sources, store, code filters

Read references/sources.md. It is a playbook per source type: what to use for each, what it returns, and the failure each one is known for.

Where the data comes from is the user's call (R2.6). If they chose one data platform, that is the plan: every source it covers goes through it, with one client, one credential and a spending cap on every run. Do not argue them back to per-source APIs. If they named the exact tool for a source, use that tool and never test an alternative against it. If they asked you to pick, choose per source from references/sources.md and say which method each got.

If the platform has an MCP server, connect it for the build. Search for and test-run the right tool for each source through MCP, then have the engine call those same tools on its schedule through the platform's API. MCP while you build, the API while it runs.

Changelogs and release notes, however they are fetched: split the page into dated entries and give each a stable id.

Every source maps to one item shape (templates/item_schema.md): id, source, title, url, body, published_at, engagement. Dedupe on the id before anything costs money. Store in SQLite unless they already run something else.

Code filters run on stored items and drop by fact: age, engagement floor, language, length, already seen. Report how many each one dropped. Pull smarter before filtering harder: a filter does not refund a row the provider already billed.


Show full SKILL.md (616 more words)Show less

Stage 4. The decision pass

Read references/decisions.md. Every item that survived the code filters gets the question(s) from PROFILE.md in one call, all items in parallel. Use a decision model with typed, probability-scored answers if one is available to the user (TypeSafe's Jev via OpenRouter is the reference here), otherwise a small, fast LLM with structured output.

Code routes each item:

  • sure drop (clearly off-topic, clearly nothing new): stored as filtered, never read
  • sure keep: goes to the reading pass
  • unsure: goes to the reading pass, where the LLM decides

Never drop on taste. "Is this a toy project", "would I like this" and "is it good" are for ranking and for the LLM, never for a hard drop. They cut real finds.

Prove it on their examples before trusting it. Score the keep/drop examples from the interview, plus a sample of today's real items you label with them. Print what was kept, what was dropped, and every miss. Tune the words of the question, not the thresholds, first.


Stage 5. The reading pass and the digest

Read references/digest.md. The LLM reads only what the decision pass let through, groups related items, and writes the digest in the format from PROFILE.md with every link kept. Start from templates/digest_prompt.md.

Cap the digest (default ten items). A digest nobody finishes is a feed.

Stage 6. Delivery and schedule

Deliver where they already read (a markdown file in their notes, email, chat). Schedule the full run once a day. If they want a weekly roll-up, it reads the week's stored items, not seven digests.

Ask before registering the schedule (cron, Task Scheduler, launchd). Once it is registered, every paid source bills every day without anyone watching. Show the one command, and run the engine once by hand if they would rather register it themselves.

Stage 7. A week in shadow

For a week the user reads the digest and marks two things: what was missing and what was noise. Fix misses by adding a source or rewording a question; fix noise with a code filter or a sharper question. Then it runs on its own.


Operating facts

  • Keys live in the repo's gitignored env file and the engine loads them from there. Never read or output that file with any tool or command (cat, sed, grep, Get-Content, Read, open()), not even "masked": a masking regex that is slightly wrong prints every key. To check a key, load the file with python-dotenv inside a program and print only the key's name and whether it is set. If one is missing, ask the user to add it themselves rather than pasting it into the chat.
  • Test every run against a throwaway database, never the one that will go live.
  • On Windows, force UTF-8 output from the start (PYTHONIOENCODING=utf-8 or reconfigure stdout). Titles from communities carry emoji and non-English text that crash the console.
  • Measure the decision pass by running the same rows with and without it: rows the LLM read, tokens, wall time, and which rows it would have kept that the pass dropped.
  • LLMs vary between runs too. A row that passed once and not the next time is not proof the decision pass is wrong.
  • Per-row data costs can exceed the whole LLM bill. The decision pass saves on reading, not on fetching.

Resources

  • references/interview.md - every question, what it becomes, and the vague answers to push on
  • references/sources.md - per source type: method, item mapping, known failures
  • references/decisions.md - writing the question, routing, evaluating on their examples
  • references/digest.md - the reading prompt, format, delivery, scheduling, the weekly roll-up
  • templates/PROFILE.md - the file the interview produces and every stage reads
  • templates/item_schema.md - the one item shape every source maps to
  • templates/digest_prompt.md - the starting reading prompt

© coleam00, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 7 other files (references) in .claude/skills/build-signal-engine of coleam00/skills.

  • SKILL.md
  • references/decisions.md
  • references/digest.md
  • references/interview.md
  • references/sources.md
  • templates/PROFILE.md
  • templates/digest_prompt.md
  • templates/item_schema.md

Open the folder on GitHubat commit 847be08

Compare with similar skills

Build Signal Engine 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.

Build Signal Engine compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Build Signal Engine this skillcoleam00/skills676—~2.9kAutomated safety check: PassMIT
Simple Englishmoeru-ai/airi50k2 repos~4.6kAutomated safety check: PassMIT
StarRocks Release NotesStarRocks/starrocks12k—~1.9kAutomated safety check: NotesApache-2.0
Cutting A ReleaseTriliumNext/Trilium38k—~3.2kAutomated safety check: PassAGPL-3.0
Mole CLI Release Flowtw93/Mole70k—~2.6kAutomated safety check: PassGPL-3.0
React Router Release Notes Prepremix-run/react-router57k—~1.1kAutomated safety check: PassMIT

Similar skills

  • Simple English

    moeru-ai/airi

    Write or rewrite technical text with the rules of ASD-STE100 Simplified Technical English so it is clear, unambiguous, and free of AI slop.

    50k GitHub starsUsed in 2 repos~4.6k tokens
    DevelopmentAuto-check passed
  • StarRocks Release Notes

    StarRocks/starrocks

    Drafts English release notes for a StarRocks patch release from the PRs merged into its release branch, then opens a documentation PR and hands translation to /translate.

    12k GitHub stars~1.9k tokensUpdated today
    DevelopmentAuto-check: notes
  • Cutting A Release

    TriliumNext/Trilium

    A skill your agent uses when cutting, preparing, or debugging a Trilium release — bumping the monorepo version, tagging, or diagnosing a failed "Release" workflow run.

    38k GitHub stars~3.2k tokensUpdated today
    DevelopmentAuto-check passed
  • Runbook for assessing and executing a Mole CLI release: distribution channels, pre-flight checks, capital-V tags, build artifacts and the handoff to curated release notes.

    70k GitHub stars~2.6k tokensUpdated today
    DevelopmentAuto-check passed
  • React Router Release Notes Prep

    remix-run/react-router

    Polishes pending React Router change files before the versioning scripts run, and decides whether a long-form What's Changed section is warranted.

    57k GitHub stars~1.1k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Release

    PrefectHQ/fastmcp

    Cut a FastMCP release end to end. An agent skill from PrefectHQ/fastmcp.

    28k GitHub stars~2.9k tokensUpdated today
    DevelopmentAuto-check passed

More from coleam00/skills

All 34 skills in this repo
  • Ablate AI Layer

    coleam00/skills

    Measure whether a repository's AI instructions still earn their place, by running the same real task many times with the layer intact and with it stripped, then grading every rule against what…

    676 GitHub stars~1.9k tokensUpdated 3 days ago
    Auto-check passed
  • Build Dark Factory

    coleam00/skills

    Take a PRD and build a dark factory around it - a repository that takes work in as an issue and ships validated code out with nobody at the keyboard - one component at a time, into the user's actual…

    676 GitHub stars~12k tokensUpdated 3 days ago
    Auto-check passed
  • Drive Screen

    coleam00/skills

    Take real control of the desktop - list and focus windows, type, paste, click, scroll, and screenshot - on Windows, macOS or Linux, and drive other coding-agent sessions running in terminals.

    676 GitHub stars~5.4k tokensUpdated 3 days ago
    Auto-check passed
  • Second Brain Audit

    coleam00/skills

    Audit any second brain, notes folder, or agent memory for facts that have quietly stopped being true, then fix the worst one so it stops recurring.

    676 GitHub stars~4.6k tokensUpdated 3 days ago
    Auto-check passed
  • Worktree Create

    coleam00/skills

    Create one or more git worktrees for parallel development, each on its own branch with gitignored config copied in, dependencies installed, and a health check, by fanning out a setup subagent per…

    676 GitHub stars~958 tokensUpdated 3 days ago
    Auto-check passed
  • Hooks Create

    coleam00/skills

    Author a working Claude Code hook from a plain-English description of what it should guarantee or do.

    676 GitHub stars~3.6k tokensUpdated 3 days ago
    Auto-check: notes

Categories

Questions about Build Signal Engine

What does Build Signal Engine do?

Build a personal signal engine from scratch - a system that reads every source someone cares about each day (changelogs and release notes, communities, feeds, videos, papers), makes a quick decision…. Build Signal Engine is an agent skill from coleam00/skills. Build a personal signal engine from scratch - a system that reads every source someone cares about each day (changelogs and release notes, communities, feeds, videos, papers), makes a quick decision on every item, lets an LLM read only what survives, and delivers one short digest.

When should I use Build Signal Engine?

Build Signal Engine fits situations like: the user wants to keep up with AI; their field without doomscrolling; build an AI news digest; A daily briefing.

How do I install Build Signal Engine in Claude Code?

Run `npx skills add coleam00/skills --skill build-signal-engine -a claude-code`. Or copy the skill folder (.claude/skills/build-signal-engine in coleam00/skills) into .claude/skills/build-signal-engine in your project. Claude Code loads it when a task matches its description.

How do I install Build Signal Engine in Codex?

Run `npx skills add coleam00/skills --skill build-signal-engine -a codex`. Or copy the skill folder (.claude/skills/build-signal-engine in coleam00/skills) into .agents/skills/build-signal-engine in your project. Codex loads it when a task matches its description.

Can I use Build Signal Engine 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 coleam00/skills --skill build-signal-engine -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/build-signal-engine, .gemini/skills/build-signal-engine, .github/skills/build-signal-engine and .opencode/skills/build-signal-engine in your project.

What does Build Signal Engine need to run?

SKILL.md names no scripts, command-line tools or credentials: Build Signal Engine is instructions for the agent only.

Does Build Signal Engine access the network?

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.

Is Build Signal Engine 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 Build Signal Engine use?

Build Signal Engine 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 Build Signal Engine use?

About 2.9k tokens (SKILL.md is roughly 11k 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 6.4k tokens, read only when the agent opens those files.

What are the alternatives to Build Signal Engine?

Skills that share tags, products or a category with Build Signal Engine: Simple English (moeru-ai/airi, 50k stars), StarRocks Release Notes (StarRocks/starrocks, 12k stars), Cutting A Release (TriliumNext/Trilium, 38k stars) and Mole CLI Release Flow (tw93/Mole, 70k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Build Signal Engine?

coleam00 (a GitHub user) maintains it in coleam00/skills, which has 676 GitHub stars. The repository holds 34 skills in this directory. The repository was last updated on October 7, 2026.

Source: coleam00/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.