Skip to content

v3.0.3

Latest

Choose a tag to compare

@Johell1NS Johell1NS released this 31 Jul 17:57

v3.0.3 — SearXNG multi-query mode with rate limiting

When the agent needs several searches, it now groups them into a single command instead of launching rapid-fire separate queries that could look like bot traffic to the search engines.

exec node <skill_dir>/scripts/searxng/searxng.mjs search \
  --query "<q1>" --time-range month \
  --query "<q2>" --lang it \
  --query "<q3>"
  • Each query can carry its own flags (--lang, --categories, --time-range, --engines, --page).
  • Queries run in series with a 3s gap between them (configurable via SEARXNG_QUERY_DELAY env var, 0 disables it).
  • Legacy format search "<query>" [flags] is unchanged (backward compatible).
  • Mixing a positional query with --query groups fails with a clear message.
  • Output: 1 query → previous schema; n queries → { ok, searches: [...] }.
  • SKILL.md documents the multi-query example and the rate-limit note; the env var is documented in data/advanced-browsing-reference.md.

See pull request #22 and issue #21.


v3.0.2 — Rendered-text fallback in smart-extract

On JS-only or slow-rendering pages, the exploratory extraction could return only a partial shell, flagged as too short below the --min-chars threshold. smart-extract.mjs now has a deterministic fallback: when both Camofox Readability and Snapshot come up too short, it re-opens the page with --wait and reads the rendered text via document.body.innerText. The threshold still applies to the result, so genuinely empty pages keep failing.

Generic (works on any page), deterministic (no agent judgment needed), and zero overhead in the happy path.

See pull request #20 and issue #19.


v3.0.1 — SearXNG auto-recovery

When the SearXNG container is down, searxng.mjs search now recovers automatically: it finds the container exposing port 8080, restarts it, waits for it to come back up, and retries the search once. No manual intervention, no fixed container name — works on any installation. Fails safe with the previous error message if no container is found.

See pull request #18 and issue #17.

Data freshness rule

The skill now has a Freshness rule in its Core rules: for time-sensitive questions (benchmarks, prices, news, releases, versions), the agent searches for updated sources aligned with the topic, using the --time-range flag in SearXNG to prefer recent results.


v3.0.0 — smart-extract automatic orchestration

What's new

Automatic content extraction

The agent no longer has to choose between Camofox and Cloak: smart-extract.mjs handles the decision automatically. Pass one or more URLs, and the script tries Camofox first, escaping to Cloak only when needed.

Skill easier to read at zero context

Each tool now has an explicit goal. The old Camofox and Cloak sections have been consolidated into a quick reference with a link to a separate reference guide. The agent understands what to use and when at a glance.

Built-in feedback loop

After extracting content, the skill guides the agent to evaluate whether the data is enough; if not, it loops back to SearXNG with refined queries.

Separate advanced reference

Screenshots, interactive tabs, proxy, session management — anything not needed in daily research is documented in data/advanced-browsing-reference.md, loaded only when needed.

Reliable expression results

JS expressions returning objects or DOM elements are automatically converted to JSON or text — no more [object Object] in the output.

Automatic quality checks

If the extracted content is too short or empty, the script reports it immediately instead of passing it through as valid.

Technical details

For the full list of changes and tests, see pull request #16.