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/nearform/lastlight/issue-answernpx skills add nearform/lastlight --skill issue-answergit clone --depth 1 https://github.com/nearform/lastlightWhat 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.00070 | $0.01206 |
| Opus 5 | $0.00035 | $0.00603 |
| Sonnet 5 | $0.00014 | $0.00241 |
| Haiku 4.5 | $0.00007 | $0.00121 |
Grade A, and why
issue-answer scanned grade A with 1 finding 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 3d 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.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
- GitHub operations via `github_*` MCP tools only — never `gh` CLI, `curl`, or How it starts
The opening of the file, as written. The whole thing — 92 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Issue Answer
A user asked a question — they want information, an explanation, or a comparison, not a code change. The router already decided this is a question; your job is to answer it well and stop. Do not re-triage it into a work item.
The question reaches you from one of two places, and the prompt tells you which:
- a GitHub issue (an
issueNumberis set), or - a Slack thread (no
issueNumber).
How your answer is delivered
Your final message is the answer — the harness posts it for you (as a comment on the issue for GitHub-initiated runs, or into the Slack thread for Slack-initiated runs). So:
- Make your final message the complete, self-contained answer in clean markdown.
- Do NOT post the answer yourself with
github_add_issue_comment— the harness delivers it, and posting it too would double-post.
Hard caps
This skill answers; it never queues work. Per invocation:
- Produce one answer (your final message).
- The only GitHub write you make is the
questionlabel, and only when answering a GitHub issue. - Never write an agent brief, apply
ready-for-agent/ready-for-human, create branches, push code, or open a PR. - Never close the issue — leave it open for the human to close once the answer satisfies them.
If, while reading, you conclude the request is actually a bug or feature request
(not a pure question), do not answer it as one. Make your final message a
short note saying it looks like work rather than a question and asking a
maintainer to @last-light build (or explore) it — let triage own work items.
Procedure
- Understand the question. Read the question from the prompt — the issue title/body (and existing comments, for a GitHub issue) or the Slack message. Identify exactly what the user wants to know.
- Research.
- The repo — read what's relevant to the answer:
CONTEXT.md,README,docs/,spec/, and code only as needed to ground claims about this project. Don't survey the whole codebase; read what the question needs. - The web — when the question references anything outside this repo
(another tool, framework, library, standard, or a "X vs Y" comparison),
use the
web_searchandweb_fetchtools to consult current, authoritative sources. Prefer official docs and primary sources. - Budget your research and converge. You have a bounded number of tool calls before the run ends — research is for grounding the answer, not exhaustive coverage. Front-load the searches you need, then stop looking. Critical: the moment you think "I have enough" (or "let me just confirm one more thing"), do not fire another tool call — write the answer now, in that same turn. Your reply being cut off mid-research delivers a useless half-sentence to the user, which is worse than an answer that omits a minor detail. If a fact is unverified, state it as unverified in the answer rather than spending your last turn chasing it. For broad/open-ended questions (e.g. "what's missing vs tool X"), gather a representative sample and answer from it — explicitly noting it's a sample, not an exhaustive audit — rather than enumerating everything.
- The repo — read what's relevant to the answer:
- Label (GitHub issue only). Ensure
questionexists idempotently withgithub_ensure_labels([{name: "question", color: "d876e3"}]— one call, no 422 to worry about), then apply it withgithub_add_labels. If ensuring or adding the label is denied, skip it — the answer is the deliverable. For a Slack-initiated question there is no issue to label. - Write the answer as your final message (the harness delivers it — see
above; do not post it yourself):
- Direct and structured. Lead with the answer; use short sections or a comparison table when it helps.
- Neutral and grounded. Claims about this project come from its docs; claims about external things are cited with links to the sources you used. Don't invent pricing, capabilities, or roadmap.
- Honest about uncertainty. If something is fast-moving or you couldn't verify it, say so rather than stating it as fact.
- Stop. The answer is the conversation; a human closes the issue when satisfied.
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.
- 3d ago First seen · 92 lines · 70 tokens per session scan A e5d6b7b1a1f9
issue-answer is a skill published in the GitHub repository nearform/lastlight (22 stars, last pushed 6d ago), licensed MIT. It adds 70 tokens to every session and 1,206 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
github-issues
GitHub issue'larını gh veya REST ile oluştur, sırala, etiketle, ata.
b00t-gh-issues
GitHub issue triage and integration review agent for the b00ty-verse. Dogfoods b00t's grok RAG subsystem to research an issue topic, then posts a structured integration review on the GH issue. Evaluates external tools/frameworks/libraries for potential integration into the b00t ecosystem. Output is a machine-parseable…
example-skill
Counts lines, words, and bytes in a text file using the bundled count.sh script. Use when asked to count/measure a file's size in these terms.
design-taste-frontend
Anti-slop frontend skill for landing pages, portfolios, and redesigns. The agent reads the brief, infers the right design direction, and ships interfaces that do not look templated. Real design systems when applicable, audit-first on redesigns, strict pre-flight check.
issue-triage
Issue triage: audit open issues, categorize, detect duplicates, cross-ref PRs, risk assessment, post comments. Args: "all" for deep analysis of all, issue numbers to focus (e.g. "42 57"), "en"/"fr" for language, no arg = audit only in French.
open-code-review
Performs AI-powered code review on Git changes using the ocr CLI from alibaba/open-code-review. Use when the user asks to review code, review a pull request, review staged/unstaged changes, review a commit, or compare branches for code quality issues. Produces line-level review comments and can automatically apply…