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 agentmods add skills/mnlt/teleport/linearnpx skills add mnlt/teleport --skill lineargit clone --depth 1 https://github.com/mnlt/teleportWhat 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 | $0.00054 | $0.01679 |
| Opus 5 | $0.00027 | $0.00839 |
| Sonnet 5 | $0.00011 | $0.00336 |
| Haiku 4.5 | $0.00005 | $0.00168 |
Grade B, and why
linear scanned grade B with 2 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 2d 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.
Reads agent configuration directoriesmediumAgent snooping
.claude/, .codex/, .gemini/ hold keys, settings and other credentials a mod has no legitimate need for.
**Do NOT suggest editing `~/.claude/settings.local.json` manually.** The `teleport-setup add-key` command handles it with backup, validation, and masked input. Stop execution until the user has run the command and restar Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
As curl: How it starts
The opening of the file, as written. The whole thing — 124 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Linear
Operates Linear via its GraphQL API — one endpoint, queries and mutations for issues, projects, cycles, teams, states, comments. Use when the task needs live workspace state.
Usage
- Use for: Listing/filtering issues, creating issues, bulk state/assignee/priority updates, joining Linear data with other sources.
- Skip for: Advice on process, pricing/marketing questions, anything requiring the UI (screenshots, drag-and-drop), pure discussion of an issue you can already read.
Credentials check
[ -n "$LINEAR_API_KEY" ] && echo "LINEAR_API_KEY: PRESENT" || echo "LINEAR_API_KEY: MISSING"
Never echo the variable directly — the value would appear in the conversation transcript. Use only the boolean pattern above.
If MISSING, respond to the user with EXACTLY this message (do NOT paraphrase, do NOT suggest manual JSON edits):
I need your linear credential. Run this in another terminal — it'll open the signup page, validate format, and save it safely with masked input:
teleport-setup add-key linearThen restart Claude Code (
/exit, thenclaude) and ask me again.
Do NOT suggest editing ~/.claude/settings.local.json manually. The teleport-setup add-key command handles it with backup, validation, and masked input. Stop execution until the user has run the command and restarted.
API
- Endpoint:
https://api.linear.app/graphql— POST only, one URL for everything. - Auth (API keys
lin_api_*):Authorization: $LINEAR_API_KEY— NOBearerprefix. Bearer is only for OAuth access tokens (Authorization: Bearer $TOKEN). This is Linear's #1 auth error. - Content-Type:
application/json. Body:{"query": "...", "variables": {...}}. - Rate limits are complexity-based: 5,000 req/hr, 3M complexity points/hr, 10K points max per query. Complexity = fields (0.1) + objects (1), scaled by
first:— nested queries cost more.
GraphQL basics
- Queries read, mutations write; both via
POST /graphql. Pass inputs invariables(not string interpolation). - Responses are always HTTP 200, even on errors. Partial success returns both
dataanderrors— always inspect.errorsbefore trusting.data.
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.
- 2d ago First seen · 124 lines · 54 tokens per session scan B 4108c13c46a4
linear is a skill published in the GitHub repository mnlt/teleport (9 stars, last pushed 4mo ago), licensed MIT. It adds 54 tokens to every session and 1,679 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it B with 2 findings (reads agent configuration directories, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
xcodebuildmcp-structured-output-review
Use when reviewing XcodeBuildMCP structured output schema changes, schema versioning, manifest outputSchema metadata, and JSON fixture compatibility.
opik-diagnose
Surface the Opik traces worth a developer's attention, ranked by signal — errors, failed tool calls, latency, regressions, and low online-eval scores — plus Diagnostics issues. Reads live/production traces via the SDK (searchtraces and agentinsights) and works with no MCP; uses the MCP issue entity when connected.…
cortex-automate
Set up automation — prospective memory triggers, neuro-symbolic rules, and CLAUDE.md sync. Use when the user says 'remind me when', 'trigger when', 'create a rule', 'auto-remember', 'sync to CLAUDE.md', 'push insights', 'set up trigger', 'when I open this file', 'when this keyword appears', or when you want to…
tabnexus-mcp-evals
Generate, validate, and run isolated Codex-to-TabNexus MCP evaluations with a curated 600-query dataset, executable gold tool labels, safety checks, and best-of-three stability scoring. Use when testing TabNexus MCP tool coverage, Agent behavior, regression quality, destructive-action safety, prompt changes, or a…
compare
Structured comparison of 2+ alternatives with consistent criteria and decision matrix.
concept-synthesis
Deduplicate and synthesize raw concept stubs into a tiered intellectual map (T1 Canon to T4 Riff), tracing idea evolution across sources over time. Transforms thousands of raw concept pages into a curated intellectual fingerprint.