Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add EliBarak12/Elliot --skill discover-sourcegit clone --depth 1 https://github.com/EliBarak12/ElliotWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/elibarak12/elliot/discover-source)<a href="https://agentmods.dev/skills/elibarak12/elliot/discover-source"><img src="https://agentmods.dev/badge/skills/elibarak12/elliot/discover-source/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/elibarak12/elliot/discover-source"><img src="https://agentmods.dev/badge/skills/elibarak12/elliot/discover-source.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 3 findings, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium Data Exfiltration · line 62 Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.Fix: Verify the destination URL is trusted and necessary. Remove or replace with documented APIs. Ensure no secrets, tokens, or PII are transmitted.
- medium Data Exfiltration · line 103 Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.Fix: Verify the destination URL is trusted and necessary. Remove or replace with documented APIs. Ensure no secrets, tokens, or PII are transmitted.
- medium Excessive Agency · line 131 Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.Fix: Add human-in-the-loop confirmation for destructive, irreversible, or high-impact operations. Never auto-execute commands that modify files, send data, or alter system state.
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00046 | $0.03076 |
| Opus 5.5 | $0.00018 | $0.01230 |
| Sonnet 5.5 | $0.00009 | $0.00615 |
| Haiku 4.5 | $0.00005 | $0.00308 |
Grade A, and why
discover-source scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 252 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Discover Source Workflow
You are identifying the user's data source and registering it with Elliot. The
goal is to land at a state where elliot_discover_source has succeeded and the
next skill (build-connector) can draft tools against the discovered schema.
Step 0 — Set context if not already set
If elliot_get_session_state shows no product_context, call:
elliot_set_contextwithname(slug-style, e.g.acme-crm) and a one-sentencedescription.
If the user hasn't told you these yet, ask in one combined question. Don't ask two separate questions.
Step 1 — Identify the source type
Ask the user (one question, listing the options):
"What kind of source is this? REST API, Postgres, MySQL, or a file (CSV / JSON / JSONL)?"
Map their answer to a source_type:
| User says | source_type arg |
|---|---|
"REST", "API", URL ending in /api |
rest (aliases: api, http) |
"Postgres", "PG", postgres:// |
postgres (alias: db, postgresql) |
"MySQL", mysql:// |
mysql |
"CSV", "JSON", "JSONL", a .csv / .json file |
file (aliases: csv, json) |
If the user has an OpenAPI spec or Postman collection, this is the wrong
skill — switch to onboard-product and call elliot_import_api_collection
instead. elliot_discover_source does not ingest OpenAPI/Postman.
If the user wants to wrap a SQLite database, Elliot does not support it as a source today; ask them to export the relevant tables to CSV or JSON first.
Step 2 — Collect the right config fields for that source type
elliot_discover_source takes exactly three arguments:
elliot_discover_source(source_type=<one of above>, config=<dict>, name=<table name>)
Everything that varies by source type goes inside the config dict. Ask in one
batched message — never field-by-field, it wastes turns.
REST
{
"url": "https://api.acme.com/v1/customers",
"method": "GET",
"auth": {
"type": "bearer",
"secret_key": "{{ env:ACME_API_TOKEN }}"
},
"data_path": "data",
"pagination": {"strategy": "offset", "page_size": 50, "max_pages": 10}
}
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 252 lines · 46 tokens per session scan A 760fe79bb3a6
discover-source is a skill published in the GitHub repository EliBarak12/Elliot (11 stars, last pushed 4d ago), licensed MIT. It adds 46 tokens to every session and 3,076 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
data-validation
Data quality and validation for ETL, API inputs and pipelines: validation rules, schema validation, data contracts, Pydantic, Great Expectations, SQL constraints.
Django Web框架
A guide for developing Django applications, using a Python web framework for websites and APIs.
分布式一致性
A guide for keeping data coordinated across multiple computers or services. Distributed consistency covers how systems synchronize data and handle conflicting updates.
仓储
A persistence abstraction for aggregates, which are groups of related business objects treated as one unit. It hides database access so the domain layer does not depend on a specific storage technology.
事件溯源
A way to store each change to a system as a permanent event instead of storing only the latest state. The current state can be rebuilt by replaying those events.
event-store-design
Design and implement event stores for event-sourced systems. Use when building event sourcing infrastructure, choosing event store technologies, or implementing event persistence patterns.