Ds Scout logo

Ds Scout

OrganizationPopular
OpenLAIR
ds-scout

Use when a quest needs problem framing, literature scouting, dataset or metric clarification, or baseline discovery before deeper work.

Overview

PublisherOpenLAIR
Repositorydr-claw
Skill nameds-scout
Stars
1.2K
Forks
136
Bundled files
4
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 4 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by OpenLAIR on GitHub. Read the source before you install it.

Installation

Install the Ds Scout AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/OpenLAIR/dr-claw/tree/main/skills/ds-scout
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/OpenLAIR/dr-claw.git /tmp/dr-claw
mkdir -p .claude/skills
cp -r /tmp/dr-claw/skills/ds-scout .claude/skills/ds-scout
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Ds Scout in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Ds Scout on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Ds Scout is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Scout

Use this skill when the quest does not yet have a stable research frame.

Interaction discipline

  • Follow the shared interaction contract injected by the system prompt.
  • For ordinary active work, prefer a concise progress update once work has crossed roughly 6 tool calls with a human-meaningful delta, and do not drift beyond roughly 12 tool calls or about 8 minutes without a user-visible update.
  • Message templates are references only. Adapt to the actual context and vary wording so updates feel natural and non-robotic.
  • If a threaded user reply arrives, interpret it relative to the latest scout progress update before assuming the task changed completely.
  • When scouting actually resolves the framing ambiguity, locks the evaluation contract, or makes the next anchor obvious, send one richer artifact.interact(kind='milestone', reply_mode='threaded', ...) update that says what is now clear, why it matters, and which stage should come next.

Tool discipline

  • Do not use native shell_command / command_execution in this skill.
  • Any shell, CLI, Python, bash, node, git, npm, uv, or repo-inspection execution must go through bash_exec(...).
  • For git inspection inside the current quest repository or worktree, prefer artifact.git(...) before raw shell git commands.
  • If scouting only needs durable quest context, prefer artifact.read_quest_documents(...), artifact.get_quest_state(...), and memory.* instead of shelling out.

Stage purpose

The scout stage exists to answer the smallest set of framing questions required to make the rest of the quest efficient:

  • what exact task is being solved?
  • which dataset, split, and metric contract matter?
  • which papers, repos, and baselines define the local neighborhood?
  • which unknowns still block baseline or ideation?

This stage is not generic browsing. It is a bounded framing and discovery stage that should quickly make the next anchor obvious.

The scout stage should usually establish four layers:

  • task-definition layer
  • evaluation-contract layer
  • literature and repo neighborhood layer
  • baseline-direction layer

If one of these layers is still missing, say so explicitly.

Non-negotiable rules

  • Do not let scout become endless exploration.
  • Do not keep searching once the next anchor is already clear.
  • Do not guess the metric, split, or baseline identity when local evidence is still ambiguous.
  • Do not ask the user ordinary technical questions before checking local evidence first.
  • Do not force a baseline route without comparing attach, import, and reproduce options.
  • Do not rely on memory alone when primary sources or durable quest files exist.
  • Before broad external search, check quest/global memory first with memory.list_recent(...) and memory.search(...).
  • When search tools are available, actively use them. Prefer web search for paper discovery, usually targeting arXiv first, then expand with benchmark docs, official repos, and broader web search for provenance.
  • When a specific arXiv paper must be read or summarized, use artifact.arxiv(paper_id=..., full_text=False) instead of defaulting to a raw PDF. Keep discovery in web search; use artifact.arxiv(...) only for actual paper reading, and set full_text=True only when needed.
  • Avoid repeating the same wide search from scratch. Reuse prior survey notes and search only for genuinely missing, newer, or unresolved references.
  • Do not write long paper summaries that do not change the next stage.
  • Search for disconfirming evidence, not only supportive evidence.
  • If the apparent gap is already closed by straightforward scaling, standard engineering, or a strong recent paper, say so directly instead of inflating novelty.

Use when

  • the user goal is still ambiguous
  • the dataset or split contract is unclear
  • the primary metric is unclear
  • no trustworthy baseline has been identified
  • the paper or repo neighborhood is still thin
  • the quest was resumed after a long pause and framing needs reconstruction
  • the next stage is blocked by ambiguity rather than by implementation

Do not use when

  • the user already fixed the paper, baseline, dataset, metric contract, and scope
  • the quest already has a validated baseline and is ready for ideation or execution
  • the real blocker is execution or verification rather than framing

Preconditions and gate

Before spending time scouting, first verify whether the current quest already contains enough framing in:

  • brief.md
  • plan.md
  • status.md
  • SUMMARY.md
  • baseline artifacts
  • recent paper or knowledge memory cards

If the answer is already clear, exit quickly and move to the correct next anchor.

Companion skill rule

scout is the framing anchor. It often prepares for baseline.

In practice:

  • use scout to determine the task frame, evaluation contract, paper neighborhood, and candidate baselines
  • use baseline once a concrete baseline route is justified

Do not stay in scout once the next baseline route is obvious enough to record durably.

Truth sources

Prefer the following sources in order:

  1. user-provided task description and explicit constraints
  2. durable quest files and artifacts
  3. codebase and repository docs
  4. primary papers, official repos, and benchmark docs
  5. existing reusable baselines and quest/global memory
  6. web-search results, often including arXiv and adjacent sources, used to fill gaps, verify provenance, or update recency

Do not let the scout stage rest on vague recollection alone.

Required durable outputs

The scout stage should usually leave behind:

  • an updated brief.md
  • an updated plan.md
  • optional status.md refresh if the quest state changed
  • a literature scouting report when external search was needed
  • memory cards for key references or framing notes
  • a report or decision artifact that points to the next anchor

Recommended durable scout files:

  • artifacts/scout/literature_scout.md
  • artifacts/scout/framing_report.md
  • artifacts/scout/eval_contract.md
  • artifacts/scout/baseline_shortlist.md

For more explicit output shapes, read:

  • references/paper-triage-playbook.md
  • references/literature-scout-template.md
  • references/eval-contract-template.md
  • references/baseline-shortlist-template.md

Thinking protocol

Scout should be:

  • conclusion-first
  • bounded
  • evidence-first
  • oriented toward the next stage

Use a simple reasoning order:

  1. what is already known?
  2. what is still ambiguous?
  3. which ambiguity actually changes later stages?
  4. what is the cheapest way to resolve it?
  5. which next anchor becomes justified after that?

Do not dump disconnected facts. Turn them into a framing decision.

Workflow

1. Reconstruct the current frame

Summarize:

  • current task
  • current dataset and split understanding
  • current metric contract
  • current baseline status
  • current blockers

If this can already be stated precisely, scouting may be complete immediately.

2. Identify the minimum unknowns

List only the unknowns that materially affect later stages, such as:

  • unclear evaluation metric
  • multiple conflicting dataset splits
  • missing baseline candidate
  • unclear repo or paper provenance
  • missing source paper for a claimed baseline

Avoid collecting "nice to know" facts that do not change the next stage.

Also classify each unknown:

  • blocks baseline
  • blocks idea
  • blocks both
  • useful but non-blocking

2.1 Reuse durable memory before external search

Before opening the web, check what the quest already knows.

At minimum:

  • inspect recent quest papers, knowledge, and decisions
  • inspect recent global papers, knowledge, and templates when the topic or benchmark looks reusable
  • run memory.search(...) over:
    • task name
    • dataset or benchmark
    • metric or split keywords
    • likely baseline names
    • mechanism or failure-mode keywords

Then classify the current state:

  • already covered well
  • stale and needs refresh
  • still missing

If the frame is already explicit after memory reuse, stop and record the next anchor. Do not open a fresh broad search just because scouting feels unfinished.

3. Search the paper and repo neighborhood

Build a compact but sufficient neighborhood of references and implementations.

Use external search actively when local evidence is not enough. When available, prefer:

  1. web search targeting arXiv for paper discovery
  2. official benchmark docs and official repos for evaluation truth
  3. broader web search for provenance checks, follow-up work, and comparison context

For papers that survive triage and need real reading, switch from discovery to reading:

  • use web search to find the paper
  • then use artifact.arxiv(paper_id=..., full_text=False) to read or summarize it
  • only switch to full_text=True or the raw PDF when the shorter view does not cover the needed detail

Search buckets should include:

  • same task, same dataset, same metric
  • same task, same mechanism
  • same task, same failure mode
  • strongest recent competitors
  • papers or repos that may have already solved the claimed gap
  • official benchmark or evaluation documentation
  • official or de facto reference repos

Use a layered search ladder:

  1. direct neighborhood:
    • same task
    • same dataset
    • same metric
  2. mechanism neighborhood:
    • same main lever or architectural trick
    • same objective or loss family
  3. bottleneck neighborhood:
    • papers or repos attacking the same failure mode
    • papers exposing the same evaluation caveat
  4. adjacent inspiration neighborhood when useful:
    • nearby tasks or domains that attack the same structural bottleneck

Prefer recent papers more heavily when the area is moving quickly, but keep older anchor papers when they define the true baseline landscape.

Keep a compact scouting ledger while searching. For each meaningful search pass, record:

  • query text
  • source, such as memory, arXiv, benchmark docs, repo search, or open web
  • why the query was issued
  • what new references were added
  • what prior references were re-confirmed
  • which ambiguity is still unresolved

For each retained reference, record:

  • identifier or title
  • why it matters
  • whether it mainly informs:
    • task framing
    • evaluation contract
    • baseline choice
    • later ideation

Also keep the retained set legible by classifying papers into:

  • closest competitors
  • adjacent inspirations
  • problem-defining anchors
  • maybe-already-solved references

If you used external search, write a literature scouting report before ending the stage. Prefer the structure in references/literature-scout-template.md.

Use references/paper-triage-playbook.md for a more detailed search and triage method.

4. Clarify the evaluation contract

Produce an explicit statement of:

  • task
  • dataset
  • split or evaluation partition
  • primary metric
  • secondary metrics if necessary
  • what counts as a useful improvement
  • what comparisons will be considered fair

The evaluation contract should be strong enough that later baseline, idea, and experiment work do not need to keep re-deriving it.

If the evaluation contract is still ambiguous after local analysis, ask the user for a structured decision instead of guessing.

Use references/eval-contract-template.md when writing the contract durably.

5. Produce a baseline shortlist

End scouting with a clear baseline direction.

For each serious candidate, score at least:

  • trustworthiness of provenance
  • metric and split compatibility
  • implementation availability
  • environment and dependency risk
  • reproduction or import cost
  • value as a downstream comparison reference

Each candidate should lead to one recommended route:

  • attach an existing baseline
  • import a reusable baseline package
  • reproduce a baseline from source
  • reject this candidate

For each serious candidate, also state:

  • whether it is a direct baseline, a strong competitor, or only an adjacent reference
  • whether the repo path or paper evidence is strong enough to trust the route
  • the cheapest credible next action: attach, import, reproduce, or reject

Use references/baseline-shortlist-template.md for a structured shortlist.

6. Recommend the next anchor

Do not stop with a list of possibilities. Choose the most justified next anchor:

  • baseline
  • idea
  • remain in scout

idea is only justified when the baseline is already durable and trustworthy enough. If no usable baseline exists, prefer baseline.

7. Update quest continuity

If the frame changed, update:

  • brief.md
  • plan.md
  • status.md

Then record a durable report or decision showing the recommended next anchor.

8. Stop on clarity, not exhaustion

The stage is done when the framing is decision-ready, not when every curiosity is satisfied.

Stop once all of the following are true:

  • the task frame is explicit enough
  • the evaluation contract is explicit enough
  • the baseline direction is justified enough
  • the next anchor is durable and obvious

Search stop rules

Stop literature and repo search when:

  • the strongest obvious local neighbors are mapped
  • the evaluation contract no longer depends on unknown sources
  • at least one baseline route is clearly better than the alternatives
  • additional papers are no longer changing the next action

Continue searching only if:

  • metric or split ambiguity remains
  • the current shortlist is too weak or conflicting
  • provenance of the likely baseline is still uncertain

Do not continue searching just to collect more papers after the next anchor is already clear.

Memory rules

Stage-start requirement:

  • begin every scout pass with memory.list_recent(scope='quest', limit=5)
  • then run at least one scout-relevant memory.search(...) before broad new search
  • if several idea or baseline lines already exist, narrow retrieval to the current line instead of mixing unrelated memory casually

Write durable memory only when it is reusable later.

Preferred memory usage:

  • quest papers:
    • literature scouting summaries
    • paper cards
    • benchmark notes
    • official-doc references
    • repo provenance notes
  • quest knowledge:
    • dataset quirks
    • metric-contract notes
    • split caveats
    • bounded framing lessons for this quest
  • quest decisions:
    • why a baseline route was preferred
    • why a conflicting evaluation interpretation was rejected
  • global knowledge:
    • reusable benchmark caveats
    • general scouting heuristics
  • global templates:
    • paper-card templates
    • eval-contract templates
    • shortlist templates

Useful tags include:

  • stage:scout
  • type:literature-scout
  • type:related-work
  • type:benchmark-note
  • type:metric-contract
  • type:baseline-shortlist
  • topic:<task-or-dataset>

When calling memory.write(...), pass tags as an array like ["stage:scout", "type:related-work", "topic:<task-or-dataset>"], not as one comma-joined string.

Recommended read timing:

  • before any new web search:
    • run memory.search(...) over task, benchmark, metric, split, and likely baselines
  • at scout start:
    • read recent quest papers, knowledge, and decisions
  • before baseline recommendation:
    • re-check quest decisions and shortlist-related notes
  • after a long pause:
    • warm-start from quest papers and knowledge before re-searching

Stage-end requirement:

  • if scouting produced a durable framing conclusion, paper note, shortlist lesson, or metric-contract caveat, write at least one memory.write(...) before leaving the stage

When writing quest papers cards, include enough metadata to reduce repeated scouting later:

  • title
  • identifier or arXiv id when available
  • URL
  • year
  • task / dataset / metric relevance
  • baseline relevance or provenance relevance
  • whether the source is official, community, or uncertain
  • whether it is new_this_pass, known_before, or watchlist

At least one durable piece of the scouting survey should be written into quest memory whenever external search materially shaped the framing or baseline shortlist.

Prefer concise, high-signal notes over long prose dumps.

Artifact rules

Preferred artifact usage:

  • use report for:
    • literature scouting synthesis
    • framing synthesis
    • evaluation contract
    • baseline shortlist
  • use decision for:
    • next-anchor recommendation
    • blocked-state routing
    • structured user choice requests when evidence cannot resolve the ambiguity
  • use milestone when the scout stage reached a clear framing checkpoint
  • use approval only if the user explicitly confirms a preference-sensitive route

Use artifact.interact(...) for a structured decision request only when a real ambiguity remains and local evidence cannot safely resolve it.

Do not close a scout stage that depended on external literature search without a durable report.

Blocked-state handling

Record a blocked state if scouting cannot proceed because:

  • the quest objective is materially ambiguous
  • the required code or paper source is missing
  • multiple evaluation contracts conflict and the choice would change later conclusions
  • all baseline candidates are too weak, broken, or poorly specified

A blocked scout result should state:

  • what is missing
  • why it matters
  • which next anchor is blocked
  • what concrete user choice or source is needed

Do not hide a blocked scout stage behind generic literature chatter.

Exit criteria

Exit the scout stage once all of the following are true:

  • the task frame is explicit
  • the evaluation contract is explicit
  • at least one baseline direction is justified
  • the next anchor is obvious enough to record durably

If the stage relied on external search, the literature scouting report must also be durable before exit.

Typical next anchors:

  • baseline
  • idea
  • remain in scout only if the remaining blocker is explicit and durable

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Ds Scout AI skill do?

Use when a quest needs problem framing, literature scouting, dataset or metric clarification, or baseline discovery before deeper work.

Why use Ds Scout on TypingMind?

Because you install it once and use it with any model. Ds Scout is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Ds Scout in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/OpenLAIR/dr-claw/tree/main/skills/ds-scout. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Ds Scout?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Ds Scout?

As many as you like. As long as a model supports skills, you can use Ds Scout with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Ds Scout AI skill free?

Yes. It is published on GitHub by OpenLAIR under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇