Agent-friendly AI Search CLI for Chinese web signals, powered by Bocha, Zhihu, and Volcengine Ark.
SaferSkills independently audited tanso (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Use tanso to explore Chinese internet signals through provider APIs and return source-backed answers. Prefer --json for agent workflows.
Check availability:
tanso version
tanso config show --jsonIf tanso is missing and the user asked for setup, install it:
npm install -g @geekjourneyx/tansoNever print .env, API keys, bearer tokens, raw config files, or CI secrets. Treat redacted config values as expected.
Use the narrowest source that matches the task:
| Need | Command |
|---|---|
| Multi-source default search | tanso "<query>" --json --limit 5 |
| All search and answer sources | tanso all "<query>" --json --limit 5 |
| Broad web evidence | tanso bocha "<query>" --json --limit 5 |
| Web-grounded direct answer | tanso volc "<query>" --json --limit 1 |
| Zhihu opinions and discussions | tanso zhihu "<query>" --json --limit 5 |
| Zhihu-backed global web search | tanso zhihu web "<query>" --json --limit 5 |
| Current Zhihu hotlist | tanso zhihu hot --json |
| Available source IDs | tanso sources --json |
Use Zhihu for opinion-rich questions, Bocha for broad corroboration, Volcengine for synthesized direct answers, and hotlist for current attention. Use tanso --help or tanso <command> --help to inspect the installed command surface before assuming a command exists.
For Zhihu global search only, filters are valid:
tanso zhihu web "<query>" --filter 'host=="example.com"' --search-db realtime --json--limit 3 to --limit 5; increase only when coverage is weak.status, results, source_status, and errors in JSON output.For research answers:
**Conclusion**
One concise answer.
**Evidence**
- Source, title, URL, key point.
- Source, title, URL, key point.
**Assessment**
What is likely true, what is uncertain, and what to verify next.For topic discovery:
**Topic Candidates**
1. Topic: why it matters, source signal, suggested angle.
2. Topic: why it matters, source signal, suggested angle.
**Counterintuitive Point**
What contradicts common assumptions.
**Next Step**
Exact follow-up searches or validation steps.| Signal | Action |
|---|---|
credential_missing or exit 4 | Check redacted config; ask for the relevant provider key if needed. |
Exit 2 | Remove incompatible flags and rerun the simplest valid command. |
Exit 5 | Retry once with a smaller limit, then switch provider. |
Exit 6 | Narrow the query and reduce --limit. |
Exit 7 | Rewrite with alternate Chinese terms or broaden to Bocha/Zhihu global search. |
When one provider fails, continue with configured alternatives if the user asked for research rather than debugging.
--filter or --search-db outside tanso zhihu web.tanso sources --json as proof that credentials work; configured only means local credential material is present.~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.