argo-search 1.0.1 → 2.9.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -21
- package/README.en.md +735 -0
- package/README.es.md +777 -0
- package/README.ja.md +777 -0
- package/README.ko.md +777 -0
- package/README.md +778 -320
- package/SKILL.md +135 -0
- package/assets/readme/hero.svg +121 -0
- package/assets/readme/made-with-beautify.svg +10 -0
- package/assets/readme/proof-routes.svg +73 -0
- package/assets/readme/why-better.svg +104 -0
- package/assets/readme/workflow.svg +83 -0
- package/backends/domain_profiles.json +2356 -96
- package/backends/engine_registry.yaml +3428 -503
- package/backends/query_synonyms_cn.json +35 -0
- package/backends/quota_profiles.json +2488 -160
- package/backends/source_types_cn.json +109 -0
- package/backends/text_lexicon.json +44 -0
- package/bin/argo +772 -0
- package/bin/argo.js +102 -39
- package/config.yaml +5139 -367
- package/cordis.patch.yml +21 -0
- package/data/countries.json +40 -0
- package/data/lang_matrix/lang_capability.json +842 -0
- package/data/lang_matrix/matrix_2026-09-10.json +11921 -0
- package/data/regions_cn.json +1 -0
- package/docs/ADDING_NEW_ENGINE.md +184 -0
- package/docs/ARGO_INTRO.md +124 -0
- package/docs/DATA_SOURCE_GAPS.md +81 -0
- package/docs/DESIGN_LOCAL_DATA_FUSION.md +90 -0
- package/docs/ENGINE_CATALOG.md +575 -0
- package/docs/MCP_SETUP.md +108 -0
- package/docs/PLATFORM_PATHS.md +111 -0
- package/docs/RELEASE_NOTES_v2.8.0.md +71 -0
- package/docs/RELEASE_NOTES_v2.8.2.md +63 -0
- package/docs/RELEASE_NOTES_v2.8.3.md +55 -0
- package/docs/RELEASE_NOTES_v2.8.4.md +79 -0
- package/docs/RELEASE_NOTES_v2.8.5.md +102 -0
- package/docs/RELEASE_NOTES_v2.8.6.md +66 -0
- package/docs/RELEASE_NOTES_v2.8.7.md +65 -0
- package/docs/RELEASE_NOTES_v2.8.8.md +67 -0
- package/docs/RELEASE_NOTES_v2.8.9.md +67 -0
- package/docs/RELEASE_NOTES_v2.9.0.md +64 -0
- package/docs/RELEASE_NOTES_v2.9.8.md +73 -0
- package/docs/SEARCH_ARCHIVE.md +115 -0
- package/docs/assets/architecture.svg +104 -0
- package/docs/assets/hero.svg +98 -0
- package/docs/engines/bangumi.md +27 -0
- package/docs/engines/biorxiv.md +27 -0
- package/docs/engines/clawhub.md +27 -0
- package/docs/engines/crt_sh.md +27 -0
- package/docs/engines/datacite.md +27 -0
- package/docs/engines/deps_dev.md +27 -0
- package/docs/engines/douban_movie.md +27 -0
- package/docs/engines/endoflife.md +27 -0
- package/docs/engines/flk_law.md +27 -0
- package/docs/engines/fxtwitter.md +27 -0
- package/docs/engines/google_news.md +27 -0
- package/docs/engines/gov_regulations.md +27 -0
- package/docs/engines/guqian.md +27 -0
- package/docs/engines/hackernews.md +27 -0
- package/docs/engines/iplant.md +27 -0
- package/docs/engines/keenable.md +27 -0
- package/docs/engines/met_museum.md +27 -0
- package/docs/engines/nasa_images.md +27 -0
- package/docs/engines/netease_music.md +27 -0
- package/docs/engines/npm.md +27 -0
- package/docs/engines/nvd.md +27 -0
- package/docs/engines/openreview.md +27 -0
- package/docs/engines/openstd.md +27 -0
- package/docs/engines/parallel_free.md +27 -0
- package/docs/engines/people_daily.md +27 -0
- package/docs/engines/realtime_index.md +27 -0
- package/docs/engines/sec_edgar.md +27 -0
- package/docs/engines/seltz.md +27 -0
- package/docs/engines/skillsmp.md +27 -0
- package/docs/engines/sspai.md +27 -0
- package/docs/engines/std_samr.md +27 -0
- package/docs/engines/train.md +27 -0
- package/docs/engines/un_comtrade.md +27 -0
- package/docs/engines/wikisource.md +27 -0
- package/docs/engines/zdic.md +27 -0
- package/docs/engines/zenodo.md +27 -0
- package/docs/engines/zhihu_hot_app.md +27 -0
- package/docs//344/270/272/344/273/200/344/271/210/351/200/211/346/213/251argo.md +176 -0
- package/engines/README.md +10 -0
- package/engines/_template_cli.yaml +39 -0
- package/engines/_template_http.yaml +37 -0
- package/engines/plugins/_template_plugin.py +50 -0
- package/engines/specs/_cisa_kev.yaml +54 -0
- package/engines/specs/_osv.yaml +63 -0
- package/engines/specs/aljazeera.yaml +43 -0
- package/engines/specs/antara.yaml +43 -0
- package/engines/specs/artic.yaml +20 -0
- package/engines/specs/aviation_weather.yaml +39 -0
- package/engines/specs/bangumi.yaml +21 -0
- package/engines/specs/biorxiv.yaml +24 -0
- package/engines/specs/carbon_intensity.yaml +32 -0
- package/engines/specs/cfets.yaml +41 -0
- package/engines/specs/cinii.yaml +44 -0
- package/engines/specs/clawhub.yaml +49 -0
- package/engines/specs/cleveland.yaml +19 -0
- package/engines/specs/cn_ai_news.yaml +43 -0
- package/engines/specs/core.yaml +35 -0
- package/engines/specs/crt_sh.yaml +38 -0
- package/engines/specs/ct24.yaml +43 -0
- package/engines/specs/datacite.yaml +27 -0
- package/engines/specs/datagov_uk.yaml +41 -0
- package/engines/specs/ddgs_images.yaml +45 -0
- package/engines/specs/deepseek_search.yaml +74 -0
- package/engines/specs/deezer.yaml +20 -0
- package/engines/specs/defillama.yaml +38 -0
- package/engines/specs/deps_dev.yaml +21 -0
- package/engines/specs/digup.yaml +36 -0
- package/engines/specs/doi.yaml +39 -0
- package/engines/specs/douban_movie.yaml +22 -0
- package/engines/specs/dw_news.yaml +47 -0
- package/engines/specs/egov_law.yaml +21 -0
- package/engines/specs/elpais.yaml +43 -0
- package/engines/specs/endoflife.yaml +21 -0
- package/engines/specs/energy_charts.yaml +21 -0
- package/engines/specs/factcheck_org.yaml +52 -0
- package/engines/specs/faz.yaml +43 -0
- package/engines/specs/federal_register.yaml +57 -0
- package/engines/specs/firecrawl.yaml +53 -0
- package/engines/specs/flk_law.yaml +24 -0
- package/engines/specs/folha.yaml +43 -0
- package/engines/specs/france24.yaml +44 -0
- package/engines/specs/full_fact.yaml +47 -0
- package/engines/specs/fxtwitter.yaml +36 -0
- package/engines/specs/gbfs_nyc.yaml +32 -0
- package/engines/specs/gdacs.yaml +21 -0
- package/engines/specs/gdelt.yaml +64 -0
- package/engines/specs/gleif.yaml +55 -0
- package/engines/specs/google_news.yaml +22 -0
- package/engines/specs/gov_regulations.yaml +38 -0
- package/engines/specs/guardian_rss.yaml +59 -0
- package/engines/specs/hkex.yaml +40 -0
- package/engines/specs/hurriyet.yaml +43 -0
- package/engines/specs/iplant.yaml +25 -0
- package/engines/specs/jikan.yaml +24 -0
- package/engines/specs/jolpica.yaml +20 -0
- package/engines/specs/k10plus.yaml +20 -0
- package/engines/specs/keenable.yaml +44 -0
- package/engines/specs/keenable_free.yaml +36 -0
- package/engines/specs/lefigaro.yaml +43 -0
- package/engines/specs/listenbrainz.yaml +19 -0
- package/engines/specs/matichon.yaml +43 -0
- package/engines/specs/met_museum.yaml +21 -0
- package/engines/specs/nasa_images.yaml +45 -0
- package/engines/specs/netease_music.yaml +38 -0
- package/engines/specs/nhk.yaml +43 -0
- package/engines/specs/nhtsa_vpic.yaml +20 -0
- package/engines/specs/noaa_swpc.yaml +20 -0
- package/engines/specs/nvd.yaml +38 -0
- package/engines/specs/obis.yaml +20 -0
- package/engines/specs/opencitations.yaml +52 -0
- package/engines/specs/openf1.yaml +21 -0
- package/engines/specs/openfoodfacts.yaml +45 -0
- package/engines/specs/openligadb.yaml +20 -0
- package/engines/specs/openreview.yaml +37 -0
- package/engines/specs/openstd.yaml +21 -0
- package/engines/specs/people_daily.yaml +22 -0
- package/engines/specs/realtime_index.yaml +34 -0
- package/engines/specs/ror.yaml +20 -0
- package/engines/specs/satnogs.yaml +20 -0
- package/engines/specs/sec_edgar.yaml +46 -0
- package/engines/specs/shfe.yaml +39 -0
- package/engines/specs/skillsmp.yaml +50 -0
- package/engines/specs/sogou_weixin_browser.yaml +30 -0
- package/engines/specs/soilgrids.yaml +25 -0
- package/engines/specs/sspai.yaml +36 -0
- package/engines/specs/stackexchange.yaml +46 -0
- package/engines/specs/std_samr.yaml +21 -0
- package/engines/specs/tass.yaml +43 -0
- package/engines/specs/tavily_free.yaml +56 -0
- package/engines/specs/tle_mirror.yaml +21 -0
- package/engines/specs/train.yaml +37 -0
- package/engines/specs/tvmaze.yaml +20 -0
- package/engines/specs/twitter_syndication.yaml +31 -0
- package/engines/specs/un_comtrade.yaml +23 -0
- package/engines/specs/unpaywall.yaml +54 -0
- package/engines/specs/vnpress.yaml +43 -0
- package/engines/specs/weather.yaml +32 -0
- package/engines/specs/who_don.yaml +21 -0
- package/engines/specs/who_gho.yaml +20 -0
- package/engines/specs/wikimedia_commons.yaml +34 -0
- package/engines/specs/wikisource.yaml +22 -0
- package/engines/specs/worms.yaml +19 -0
- package/engines/specs/x_trending.yaml +34 -0
- package/engines/specs/yna.yaml +43 -0
- package/engines/specs/ynet.yaml +43 -0
- package/engines/specs/yuanbao.yaml +93 -0
- package/engines/specs/zbmath.yaml +40 -0
- package/engines/specs/zdic.yaml +22 -0
- package/engines/specs/zenodo.yaml +27 -0
- package/engines/specs/zhihu_hot_app.yaml +35 -0
- package/mcp/clients.yaml +106 -0
- package/package.json +55 -12
- package/packages/dsh-plugin/README.md +152 -0
- package/packages/dsh-plugin/cordis.patch.yml +48 -0
- package/packages/dsh-plugin/dsh/client.js +1533 -0
- package/packages/dsh-plugin/dsh/diagnostics.js +54 -0
- package/packages/dsh-plugin/dsh/index.js +527 -0
- package/packages/dsh-plugin/dsh/native-tools.mjs +749 -0
- package/packages/dsh-plugin/dsh/runner.js +666 -0
- package/packages/dsh-plugin/dsh/wide-research.js +878 -0
- package/packages/dsh-plugin/package.json +38 -0
- package/packages/dsh-plugin/scripts/sync-local.sh +70 -0
- package/packages/dsh-plugin/test/client.test.js +406 -0
- package/packages/dsh-plugin/test/config.test.js +30 -0
- package/packages/dsh-plugin/test/diagnostics.test.js +28 -0
- package/packages/dsh-plugin/test/index.test.js +1382 -0
- package/references/query-templates.md +96 -0
- package/references/query-templates.yaml +118 -0
- package/scripts/ab_eval.py +219 -0
- package/scripts/ab_eval_p0p1.py +266 -0
- package/scripts/adaptive.py +294 -70
- package/scripts/answer.py +154 -0
- package/scripts/archive_run.py +591 -0
- package/scripts/argo_engine_registry.py +172 -0
- package/scripts/argo_paths.py +728 -0
- package/scripts/article.py +136 -0
- package/scripts/article_meta.py +131 -0
- package/scripts/arxiv_source.py +201 -0
- package/scripts/badcase_ledger.py +252 -0
- package/scripts/batch_probe.py +241 -0
- package/scripts/benchmark.py +19 -0
- package/scripts/bounded_run.py +144 -0
- package/scripts/browser_auth.py +323 -0
- package/scripts/budget.py +247 -0
- package/scripts/budget_cli.py +93 -0
- package/scripts/build_release_assets.sh +65 -0
- package/scripts/burstiness_detector.py +147 -0
- package/scripts/cache.py +1066 -67
- package/scripts/cache_guard.py +271 -0
- package/scripts/cache_key_vdom.py +56 -0
- package/scripts/cache_similarity.py +170 -0
- package/scripts/caliber_isolation.py +195 -0
- package/scripts/calibrate_lowquality.py +210 -0
- package/scripts/candidate_envelope.py +366 -0
- package/scripts/chrome_cdp.py +871 -0
- package/scripts/ci_drift_gate.py +90 -0
- package/scripts/circuit_breaker.py +389 -0
- package/scripts/citations.py +334 -0
- package/scripts/cite_cli.py +59 -0
- package/scripts/cjk_tokens.py +95 -0
- package/scripts/clarify.py +47 -24
- package/scripts/cli_io.py +240 -0
- package/scripts/config.py +683 -45
- package/scripts/config_cache.py +402 -0
- package/scripts/conn_pool.py +220 -0
- package/scripts/content_boundary.py +46 -0
- package/scripts/content_security.py +685 -0
- package/scripts/content_signals.py +751 -0
- package/scripts/crawl.py +74 -35
- package/scripts/cross_lingual_trace.py +293 -0
- package/scripts/daemon.py +866 -0
- package/scripts/digup_bridge.py +214 -0
- package/scripts/dispatch_result.py +98 -0
- package/scripts/engine_admission.py +366 -0
- package/scripts/engine_dispatch.py +982 -0
- package/scripts/engine_env.py +539 -0
- package/scripts/engine_failure.py +411 -0
- package/scripts/engine_families.py +738 -0
- package/scripts/engine_policy.py +218 -0
- package/scripts/engine_requires.py +190 -0
- package/scripts/engine_status.py +322 -0
- package/scripts/engine_validate.py +638 -0
- package/scripts/engines.py +799 -294
- package/scripts/engines_base.py +1521 -0
- package/scripts/engines_builders.py +310 -0
- package/scripts/engines_builders_batch10.py +204 -0
- package/scripts/engines_builders_batch11.py +174 -0
- package/scripts/engines_builders_batch12.py +103 -0
- package/scripts/engines_builders_batch13.py +340 -0
- package/scripts/engines_builders_batch14.py +656 -0
- package/scripts/engines_builders_batch15.py +249 -0
- package/scripts/engines_builders_batch9.py +1468 -0
- package/scripts/engines_builders_cn.py +2283 -0
- package/scripts/engines_builders_data.py +2923 -0
- package/scripts/engines_builders_data_macro.py +775 -0
- package/scripts/engines_builders_feeds.py +255 -0
- package/scripts/engines_builders_intl.py +1239 -0
- package/scripts/engines_builders_keyless.py +111 -0
- package/scripts/engines_builders_search.py +440 -0
- package/scripts/engines_builders_tech.py +1359 -0
- package/scripts/evidence.py +620 -166
- package/scripts/evidence_loop.py +624 -0
- package/scripts/evidence_tier.py +298 -0
- package/scripts/except_sets.py +25 -0
- package/scripts/extract.py +55 -16
- package/scripts/fact_align.py +207 -0
- package/scripts/fact_crosscheck.py +230 -0
- package/scripts/fetch.py +25 -12
- package/scripts/fetch_browser.py +87 -0
- package/scripts/fetch_jsrun.py +122 -0
- package/scripts/fetch_quality.py +225 -0
- package/scripts/fetch_render_tinyfish.py +117 -0
- package/scripts/fetch_v3.py +1804 -0
- package/scripts/focus_extract.py +350 -0
- package/scripts/fulltext_store.py +169 -0
- package/scripts/fxtwitter_api.py +325 -0
- package/scripts/gen_engine_catalog.py +364 -0
- package/scripts/gen_native_tools.py +91 -0
- package/scripts/gen_routing_snapshot.py +195 -0
- package/scripts/health_check.py +140 -402
- package/scripts/health_probe.py +23 -8
- package/scripts/hot_state.py +134 -0
- package/scripts/http_client.py +1053 -0
- package/scripts/image_ops.py +430 -0
- package/scripts/image_vision/vision_probe.swift +126 -0
- package/scripts/install.ps1 +166 -0
- package/scripts/install.sh +221 -0
- package/scripts/job.py +1186 -0
- package/scripts/jump_resolver.py +235 -0
- package/scripts/lang_capability.py +150 -0
- package/scripts/lang_detect.py +289 -0
- package/scripts/lang_matrix_probe.py +329 -0
- package/scripts/lang_pref.py +311 -0
- package/scripts/link_source.py +340 -0
- package/scripts/local_image.py +970 -0
- package/scripts/local_seek.py +402 -0
- package/scripts/macro_countries.py +97 -0
- package/scripts/matrix_search_eval.py +1187 -0
- package/scripts/mcp_compact.py +234 -0
- package/scripts/mcp_diag.py +8 -3
- package/scripts/mcp_handlers.py +492 -0
- package/scripts/mcp_handlers_surface.py +157 -0
- package/scripts/mcp_launch.sh +124 -0
- package/scripts/mcp_local.py +241 -0
- package/scripts/mcp_server.py +125 -419
- package/scripts/mcp_setup.py +431 -0
- package/scripts/mcp_tools.py +331 -0
- package/scripts/mcp_transport.py +191 -0
- package/scripts/mcp_warm.py +127 -0
- package/scripts/min_version_scan.py +335 -0
- package/scripts/net_proxy.py +258 -0
- package/scripts/network_aware.py +152 -0
- package/scripts/output_transparency.py +200 -0
- package/scripts/paid_policy.py +98 -0
- package/scripts/paper.py +274 -0
- package/scripts/pdf_extract.py +518 -0
- package/scripts/phrase_filter.py +66 -0
- package/scripts/plan.py +422 -0
- package/scripts/postprocess_signals.py +150 -0
- package/scripts/pre-commit +48 -0
- package/scripts/query_enhance.py +157 -0
- package/scripts/query_operators.py +196 -0
- package/scripts/query_rewriter.py +116 -7
- package/scripts/query_signals.py +300 -0
- package/scripts/query_templates.py +167 -0
- package/scripts/query_understanding.py +411 -0
- package/scripts/query_variants.py +298 -0
- package/scripts/quota.py +633 -76
- package/scripts/rank_signals.py +775 -0
- package/scripts/ranking_eval.py +319 -0
- package/scripts/readability_extract.py +433 -0
- package/scripts/recompute.py +415 -0
- package/scripts/recovery.py +616 -0
- package/scripts/recovery_l0.py +160 -0
- package/scripts/recovery_runner.py +150 -0
- package/scripts/redskill/redskill_engine.py +332 -0
- package/scripts/regression_p0p1.py +318 -0
- package/scripts/replay_eval.py +658 -0
- package/scripts/rerank_tfidf.py +225 -0
- package/scripts/research.py +607 -403
- package/scripts/research_cli.py +361 -0
- package/scripts/research_dossier.py +492 -0
- package/scripts/research_expand.py +169 -0
- package/scripts/research_gates.py +272 -0
- package/scripts/research_report.py +209 -0
- package/scripts/research_strategy.py +37 -0
- package/scripts/research_work_packages.py +195 -0
- package/scripts/result_lang.py +311 -0
- package/scripts/retry_policy.py +76 -0
- package/scripts/robots_guard.py +259 -0
- package/scripts/route.py +921 -254
- package/scripts/route_bangs.py +40 -0
- package/scripts/route_cache.py +243 -0
- package/scripts/route_combo.py +917 -0
- package/scripts/route_domains.py +341 -0
- package/scripts/route_lang.py +605 -0
- package/scripts/route_log.py +63 -0
- package/scripts/route_policy.py +250 -0
- package/scripts/rrf_classic.py +66 -0
- package/scripts/screenshot.py +73 -0
- package/scripts/search.py +886 -406
- package/scripts/search_attribution.py +185 -0
- package/scripts/search_benchmark.py +407 -0
- package/scripts/search_cli.py +640 -0
- package/scripts/search_entry.py +395 -0
- package/scripts/search_output.py +690 -0
- package/scripts/search_pipeline.py +926 -0
- package/scripts/search_rank.py +991 -0
- package/scripts/search_types.py +129 -16
- package/scripts/seek_locator.py +68 -0
- package/scripts/semantic_evidence.py +391 -0
- package/scripts/serp_guard.py +336 -0
- package/scripts/serp_kill_log.py +74 -0
- package/scripts/single_flight.py +120 -0
- package/scripts/social_engines/__init__.py +10 -0
- package/scripts/social_engines/bilibili_engine.py +131 -0
- package/scripts/social_engines/hackernews_engine.py +113 -0
- package/scripts/social_engines/reddit_engine.py +172 -0
- package/scripts/social_engines/twitter_engine.py +397 -0
- package/scripts/social_engines/v2ex_engine.py +101 -0
- package/scripts/social_engines/weibo_engine.py +128 -0
- package/scripts/social_engines/xiaohongshu_engine.py +137 -0
- package/scripts/social_engines/zhihu_engine.py +139 -0
- package/scripts/social_research.py +201 -0
- package/scripts/sogou_weixin_browser.py +318 -0
- package/scripts/source_ledger.py +249 -0
- package/scripts/stage_timing.py +58 -0
- package/scripts/stats_cli.py +107 -0
- package/scripts/straggler_policy.py +60 -0
- package/scripts/stylometry_detector.py +231 -0
- package/scripts/sync_backends.py +353 -0
- package/scripts/sync_installs.py +29 -0
- package/scripts/template_cli.py +127 -0
- package/scripts/text_lexicon.py +72 -0
- package/scripts/tfidf_router.py +109 -37
- package/scripts/time_utils.py +233 -0
- package/scripts/topic_research_profiles.py +643 -0
- package/scripts/train.py +737 -0
- package/scripts/tweet.py +596 -0
- package/scripts/url_canon.py +217 -0
- package/scripts/url_optimize.py +56 -0
- package/scripts/url_safety.py +236 -0
- package/scripts/usage_log.py +116 -0
- package/scripts/usage_log_clean.py +113 -0
- package/scripts/v2ex_nodes.py +311 -0
- package/scripts/variant_recall.py +188 -0
- package/scripts/watch.py +205 -0
- package/scripts/wechat_article.py +258 -0
- package/scripts/wide_research.py +447 -0
- package/scripts/wx.py +349 -0
- package/scripts/x_article_fetch.py +141 -0
- package/scripts/x_search.py +234 -0
- package/scripts/x_trending.py +189 -0
- package/scripts/yaml_load.py +67 -0
- package/scripts/zhihu_quota.py +139 -0
- package/sub-skills/ego-search/SKILL.md +253 -0
- package/sub-skills/ego-search/scripts/ego_search.py +800 -0
- package/sub-skills/ego-search/scripts/merge.py +226 -0
- package/sub-skills/ego-search/scripts/quality.py +64 -0
- package/sub-skills/ego-search/scripts/runtime.py +172 -0
- package/sub-skills/ego-search/scripts/safety.py +109 -0
- package/sub-skills/ego-search/scripts/serp_spec.py +109 -0
- package/sub-skills/ego-search/scripts/webbridge_adapter.py +374 -0
- package/sub-skills/js-run/SKILL.md +67 -0
- package/sub-skills/js-run/scripts/jsrun.py +112 -0
- package/sub-skills/js-run/scripts/shim.js +188 -0
- package/sub-skills/local-search/SKILL.md +50 -53
- package/sub-skills/local-search/bm25.py +186 -0
- package/sub-skills/local-search/cli_runner.py +331 -0
- package/sub-skills/local-search/config.yaml +152 -55
- package/sub-skills/local-search/engine_registry.py +91 -26
- package/sub-skills/local-search/{health_check.py → local_health_check.py} +140 -10
- package/sub-skills/local-search/local_search_adapter.py +13 -2
- package/sub-skills/local-search/parse_maps.yaml +40 -42
- package/sub-skills/local-search/parsers.py +328 -0
- package/sub-skills/local-search/search_v3.py +716 -242
- package/sub-skills/local-search/smart_router.py +47 -7
- package/sub-skills/local-seek/SKILL.md +110 -0
- package/sub-skills/local-seek/config/domains.yaml +20 -0
- package/sub-skills/local-seek/scripts/eval_rank.py +216 -0
- package/sub-skills/local-seek/scripts/eval_seek.py +224 -0
- package/sub-skills/local-seek/scripts/seek.py +1465 -0
- package/sub-skills/local-seek/scripts/seek_frecency.py +126 -0
- package/sub-skills/local-seek/scripts/seek_fts.py +430 -0
- package/sub-skills/local-seek/scripts/seek_rank.py +197 -0
package/SKILL.md
ADDED
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: argo
|
|
3
|
+
description: Argo 阿尔戈 — 统一搜索、网页抓取与证据核验。当需要搜索/查一下/核实/抓取网页/爬取/深度研究/论文检索/新闻/舆情/公众号文章/招聘聚合时使用;支持影视/体育/金融/宏观/学术等垂直域与多语言查询。
|
|
4
|
+
version: 2.9.8
|
|
5
|
+
triggers:
|
|
6
|
+
- 搜索
|
|
7
|
+
- 查一下
|
|
8
|
+
- 搜一下
|
|
9
|
+
- 核实
|
|
10
|
+
- 查证
|
|
11
|
+
- 可信度
|
|
12
|
+
- 抓取
|
|
13
|
+
- 爬取
|
|
14
|
+
- 深度研究
|
|
15
|
+
- 论文
|
|
16
|
+
- 舆情
|
|
17
|
+
- 公众号
|
|
18
|
+
- 招聘
|
|
19
|
+
- search for
|
|
20
|
+
- look up
|
|
21
|
+
- fact check
|
|
22
|
+
- fetch
|
|
23
|
+
- crawl
|
|
24
|
+
- research
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
# Argo — 统一搜索与证据核验
|
|
28
|
+
|
|
29
|
+
> 不止搜到,还要核到:高后果问题标 `fetch_required`、结果标 `fetch_suggested`,`--verify` 核验正文并回填证据分。收录 272 个源、235 个免密钥可用;digup 默认关;deepseek_search 默认开、需 DEEPSEEK_API_KEY(按次计费,无 key 自动跳过)。
|
|
30
|
+
|
|
31
|
+
## 快速上手
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
argo search "查询词" # 自动路由搜索(daemon 需显式启动)
|
|
35
|
+
argo search "查询词" --json --fields agent # Agent 消费档
|
|
36
|
+
argo search "查询词" --verify 3 # 核验 top-3 并回填证据分
|
|
37
|
+
python3 scripts/research.py "复杂问题" --json # 取证包(扩词或多工作包 → dossier)
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
默认不附 candidates/sources;`--fields agent` 只留答案(~4.3 KB),要追溯或归档才加 `--envelope`(`--archive` 自动带)。
|
|
41
|
+
|
|
42
|
+
深度研究只此一条,产出**取证包(dossier)**(来源/覆盖/缺口/达标,不是判断稿):先读 `references/research-protocol.md` 写工作包再取证,判断按事实/推断/建议写。不要另装「专业深度研究」skill。
|
|
43
|
+
|
|
44
|
+
## 核心命令
|
|
45
|
+
|
|
46
|
+
### search — 统一搜索
|
|
47
|
+
|
|
48
|
+
| 参数 | 说明 |
|
|
49
|
+
|------|------|
|
|
50
|
+
| `--engine <name>` | 强制引擎(anysearch/byted/bocha/exa/deepseek_search/tavily/eastmoney/zhihu/arxiv/pypi/mdn/hackernews/v2ex/redskill…,全量见 `--list-engines`) |
|
|
51
|
+
| `--local-first` | 本地零成本聚合优先(local_search 29 引擎) |
|
|
52
|
+
| `--include-local` / `--no-local` | 本机文件命中(source=local_files,score 0.9/0.7):fast/budget 默认开,auto/deep 显式 |
|
|
53
|
+
| `--mode fast|auto|deep|budget` | fast 免费优先 / auto 成本感知(默认)/ deep 质量优先 / budget 配额控制 |
|
|
54
|
+
| `--explain` | 解释路由决策(含 TF-IDF 分数) |
|
|
55
|
+
| `--no-cache` / `--depth fast|balanced|deep` | 跳过缓存 / 搜索深度 |
|
|
56
|
+
| `--academic-deep` | 学术多源模式:自动设置 depth=deep + domain=academic,禁用 early-stop 让所有学术源参与(arxiv/openalex/local_pubmed/core 等) |
|
|
57
|
+
| `--since 7d|2026-08-01` `--until` `--sort relevance|newest|oldest` | 时间窗过滤 + 时间排序 |
|
|
58
|
+
| `--verify [N]` | 对 top-N 未核验结果 fetch 正文,回填证据分(URL→证据分缓存,同 URL 二次搜索自动复用) |
|
|
59
|
+
| `--domain` `--sub_domain` | 垂直域 / 子域限定 |
|
|
60
|
+
|
|
61
|
+
**按场景选引擎**:时事/时间窗 → deepseek_search,学术 → `--academic-deep`/exa,社交 → anysearch。口径与取舍见 `references/usage.md`。
|
|
62
|
+
|
|
63
|
+
### 图片检索
|
|
64
|
+
|
|
65
|
+
网络图走 `search`(`image_search` 域自动命中);本地素材走 `argo local-image`
|
|
66
|
+
(Vision 索引 + `--similar-to` 找相似图 + `--sheet` 出联络表;默认关,需 `ARGO_LOCAL_IMAGE=1`,见 `references/usage.md`)。
|
|
67
|
+
|
|
68
|
+
### 增强三工具
|
|
69
|
+
|
|
70
|
+
```bash
|
|
71
|
+
# research — 取证(扩词或 --work-packages → 取证包 + 引用 + 达标检查)
|
|
72
|
+
# 工作包可带 file_inputs / recompute(默认拒绝,需显式授权)
|
|
73
|
+
# 社交舆情:--mode social-sentiment --platforms xiaohongshu,reddit,twitter
|
|
74
|
+
python3 scripts/research.py "查询" [--work-packages PATH|JSON] [--depth deep] [--json] [--verify N]
|
|
75
|
+
|
|
76
|
+
# evidence — 可信度评估(选拔×吸收两维)
|
|
77
|
+
echo '{"results": [...]}' | python3 scripts/evidence.py "查询词" --stdin --json [--high-stakes]
|
|
78
|
+
|
|
79
|
+
# clarify — 意图消歧
|
|
80
|
+
python3 scripts/clarify.py "有歧义的查询" --json
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
### 抓取族(`bin/argo` 入口)
|
|
85
|
+
|
|
86
|
+
```bash
|
|
87
|
+
argo fetch "https://example.com" [--focus "关键词"] [--use-browser]
|
|
88
|
+
# 降级链见 references/usage.md
|
|
89
|
+
argo screenshot "https://example.com" [--full-page]
|
|
90
|
+
argo pdf "https://example.com/paper.pdf" [--pages "1-5"] [--password "secret"]
|
|
91
|
+
argo paper "1706.03762" # 论文深读
|
|
92
|
+
argo tweet "<x-url|id>" # X 帖子打包(正文+串/引用/转发+媒体)
|
|
93
|
+
argo answer "query" [--scope <语料>] # 直答(语料见 usage.md)
|
|
94
|
+
argo watch add|check|list|remove # 观察模式(--json 供 cron)
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
## Agent 执行纪律
|
|
98
|
+
|
|
99
|
+
1. **高后果问题**(金融/医疗/法律/事实核查):search → evidence(或看 `credibility_fast`)→ fetch 高分 URL → 再下结论;`fetch_required=true` 时禁止跳过核验
|
|
100
|
+
2. **数字**:必须标注算法(全市场/主动/持仓市值 vs 占比);冲突时并列,禁止算法未对齐就合并
|
|
101
|
+
3. **SERP 链**(baidu/s、sogou/link):禁止当正文来源
|
|
102
|
+
4. **社交帖**:叙事/舆情,不进事实真值
|
|
103
|
+
5. **深度研究**:先读 `references/research-protocol.md`;有决策含义就交工作包,不要靠扩词充问题树;`quality_gate_results.passed=false` 必须降级表述
|
|
104
|
+
6. **引用**:讲给用户的事实带 URL 出处,日常档也要带(URL 在 `results[].url`,零成本)
|
|
105
|
+
7. **上下文纪律**:Agent 用 `--json --fields agent`、按需 `-n`;追溯/归档才加 `--envelope`;引擎状态用 `--list-engines --detail --engine <名>`(~0.9 KB)。踩坑见 Gotchas
|
|
106
|
+
|
|
107
|
+
## Gotchas
|
|
108
|
+
|
|
109
|
+
踩坑加一行,口径见 `references/usage.md`。
|
|
110
|
+
|
|
111
|
+
- **`--envelope` 与 `--fields agent` 别同给**:后者把 envelope 增量剥成 0 字节;要 provenance 就去掉 `--fields agent`。
|
|
112
|
+
- **结果异常少**:看 `funnel` 六格阶段计数,哪格归零即塌陷点。
|
|
113
|
+
- **慢查询**:看 `timing.dispatch` 的 `tail_wait_ms`(就绪后还在等)/`abandoned_engine_ms`。
|
|
114
|
+
- **`--list-engines` 别直接 `--all`**:全量 ~54 KB 灌爆版面,默认摘要够用。
|
|
115
|
+
- **`-n` 超 10 无收益**。
|
|
116
|
+
|
|
117
|
+
## 按需读取(低频操作细节)
|
|
118
|
+
|
|
119
|
+
以下按需打开;日常搜索/抓取/研究走上面核心命令即可。
|
|
120
|
+
|
|
121
|
+
| 场景 | 读什么 |
|
|
122
|
+
|------|--------|
|
|
123
|
+
| MCP 工具全清单 / 多客户端注入 / DSH 插件接入 / 配额·TinyFish / 子技能 / 本地打通 / 工程纪律 | `references/operations.md` |
|
|
124
|
+
| **使用指南**:全命令、参数、86 开关总表、输出体积陷阱、日志反馈 | `references/usage.md` |
|
|
125
|
+
| 深度研究协议:约定、工作包、取证包 vs 判断稿、达标检查 | `references/research-protocol.md` |
|
|
126
|
+
| 约定 / 工作包 / 判断稿模板 | `references/research-templates.md` |
|
|
127
|
+
| X 关键词搜索与查询模板(`argo x-search` / `argo template`,含机制与扩展) | `references/query-templates.md` |
|
|
128
|
+
| 引擎全景:垂直域/社交/学术/本地引擎表 + 路由规则 | `references/engines.md` |
|
|
129
|
+
| 学术检索:查询构造(arXiv/S2/GS 语法)、相关性五因子排序、引用网络挖掘、学术反模式与证据分级 | `references/academic-query.md` |
|
|
130
|
+
| 架构:文件结构、证据流水线、量化公式、输出 JSON Schema、内容质量信号 | `references/architecture.md` |
|
|
131
|
+
| MCP 多客户端注入详解 | `docs/MCP_SETUP.md` |
|
|
132
|
+
| **搜索源使用文档**:全量清单(费用 / 密钥 / 状态 / 域组合)+ 特别能力 + 打开方式 | `docs/ENGINE_CATALOG.md`(生成,勿手改) |
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
> 工程纪律(每个事实只定义一处:代码看本仓库、引擎声明看 config.yaml、宿主入口用 link_source.py 建软链、新增源流程)见 `references/operations.md` 末尾。
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="1200" height="380" viewBox="0 0 1200 380" role="img" aria-labelledby="title desc">
|
|
2
|
+
<title id="title">Argo 阿尔戈</title>
|
|
3
|
+
<desc id="desc">给 Agent 用的统一搜索与证据核验:按域按语言选路,返回能核验、能吸收的材料</desc>
|
|
4
|
+
|
|
5
|
+
<defs>
|
|
6
|
+
<linearGradient id="bg" x1="0" y1="0" x2="1200" y2="380" gradientUnits="userSpaceOnUse">
|
|
7
|
+
<stop offset="0%" stop-color="#070B14"/>
|
|
8
|
+
<stop offset="55%" stop-color="#0B1220"/>
|
|
9
|
+
<stop offset="100%" stop-color="#0E1730"/>
|
|
10
|
+
</linearGradient>
|
|
11
|
+
<linearGradient id="route" x1="0" y1="0" x2="1" y2="0">
|
|
12
|
+
<stop offset="0%" stop-color="#38BDF8" stop-opacity="0.15"/>
|
|
13
|
+
<stop offset="50%" stop-color="#38BDF8" stop-opacity="0.85"/>
|
|
14
|
+
<stop offset="100%" stop-color="#A78BFA" stop-opacity="0.7"/>
|
|
15
|
+
</linearGradient>
|
|
16
|
+
<linearGradient id="barA" x1="0" y1="0" x2="1" y2="0">
|
|
17
|
+
<stop offset="0%" stop-color="#38BDF8"/>
|
|
18
|
+
<stop offset="100%" stop-color="#34D399"/>
|
|
19
|
+
</linearGradient>
|
|
20
|
+
<linearGradient id="barB" x1="0" y1="0" x2="1" y2="0">
|
|
21
|
+
<stop offset="0%" stop-color="#A78BFA"/>
|
|
22
|
+
<stop offset="100%" stop-color="#38BDF8"/>
|
|
23
|
+
</linearGradient>
|
|
24
|
+
<pattern id="dots" width="24" height="24" patternUnits="userSpaceOnUse">
|
|
25
|
+
<circle cx="1" cy="1" r="0.8" fill="#38BDF8" opacity="0.12"/>
|
|
26
|
+
</pattern>
|
|
27
|
+
</defs>
|
|
28
|
+
|
|
29
|
+
<rect width="1200" height="380" rx="28" fill="url(#bg)"/>
|
|
30
|
+
<rect width="1200" height="380" rx="28" fill="url(#dots)"/>
|
|
31
|
+
|
|
32
|
+
<!-- left accent rail -->
|
|
33
|
+
<rect x="0" y="48" width="4" height="284" fill="#38BDF8" opacity="0.9"/>
|
|
34
|
+
|
|
35
|
+
<!-- Title block -->
|
|
36
|
+
<g id="title-block" transform="translate(56 52)">
|
|
37
|
+
<text x="0" y="18" font-family="ui-monospace, SFMono-Regular, Menlo, monospace" font-size="13" fill="#38BDF8" letter-spacing="2.5">AGENT SEARCH · EVIDENCE ROUTER</text>
|
|
38
|
+
<text x="0" y="78" font-family="-apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC, sans-serif" font-size="56" font-weight="700" fill="#E8EEF7">Argo</text>
|
|
39
|
+
<text x="168" y="78" font-family="-apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC, sans-serif" font-size="34" font-weight="500" fill="#94A3B8">阿尔戈</text>
|
|
40
|
+
<text x="0" y="122" font-family="-apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC, sans-serif" font-size="18" fill="#CBD5E1">给 Agent 用的统一搜索与证据核验</text>
|
|
41
|
+
<text x="0" y="152" font-family="-apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC, sans-serif" font-size="16" fill="#64748B">不只返回链接 · 按域按语言选路 · 输出可吸收证据</text>
|
|
42
|
+
|
|
43
|
+
<!-- meta chips -->
|
|
44
|
+
<g transform="translate(0 188)">
|
|
45
|
+
<rect width="118" height="32" rx="8" fill="#121A2B" stroke="#1E2A3F"/>
|
|
46
|
+
<text x="59" y="21" text-anchor="middle" font-family="ui-monospace, Menlo, monospace" font-size="12" fill="#94A3B8">v2.9.8</text>
|
|
47
|
+
|
|
48
|
+
<rect x="130" width="132" height="32" rx="8" fill="#121A2B" stroke="#1E2A3F"/>
|
|
49
|
+
<text x="196" y="21" text-anchor="middle" font-family="ui-monospace, Menlo, monospace" font-size="12" fill="#38BDF8">272 engines</text>
|
|
50
|
+
|
|
51
|
+
<rect x="274" width="118" height="32" rx="8" fill="#121A2B" stroke="#1E2A3F"/>
|
|
52
|
+
<text x="333" y="21" text-anchor="middle" font-family="ui-monospace, Menlo, monospace" font-size="12" fill="#A78BFA">19 MCP</text>
|
|
53
|
+
|
|
54
|
+
<rect x="404" width="100" height="32" rx="8" fill="#121A2B" stroke="#1E2A3F"/>
|
|
55
|
+
<text x="454" y="21" text-anchor="middle" font-family="ui-monospace, Menlo, monospace" font-size="12" fill="#34D399">Python</text>
|
|
56
|
+
</g>
|
|
57
|
+
|
|
58
|
+
<!-- pipeline cue -->
|
|
59
|
+
<g transform="translate(0 248)" font-family="ui-monospace, Menlo, monospace" font-size="12">
|
|
60
|
+
<text x="0" y="0" fill="#475569">query</text>
|
|
61
|
+
<text x="58" y="0" fill="#334155">→</text>
|
|
62
|
+
<text x="78" y="0" fill="#38BDF8">lang</text>
|
|
63
|
+
<text x="118" y="0" fill="#334155">→</text>
|
|
64
|
+
<text x="138" y="0" fill="#38BDF8">route</text>
|
|
65
|
+
<text x="186" y="0" fill="#334155">→</text>
|
|
66
|
+
<text x="206" y="0" fill="#A78BFA">RRF</text>
|
|
67
|
+
<text x="244" y="0" fill="#334155">→</text>
|
|
68
|
+
<text x="264" y="0" fill="#34D399">evidence</text>
|
|
69
|
+
</g>
|
|
70
|
+
</g>
|
|
71
|
+
|
|
72
|
+
<!-- Right: live route proof card -->
|
|
73
|
+
<g id="project-proof" transform="translate(620 42)">
|
|
74
|
+
<rect width="528" height="296" rx="18" fill="#0D1526" stroke="#1E2A3F" stroke-width="1.5"/>
|
|
75
|
+
<!-- title bar -->
|
|
76
|
+
<rect width="528" height="40" rx="18" fill="#121A2B"/>
|
|
77
|
+
<rect y="22" width="528" height="18" fill="#121A2B"/>
|
|
78
|
+
<circle cx="22" cy="20" r="5" fill="#F87171" opacity="0.8"/>
|
|
79
|
+
<circle cx="40" cy="20" r="5" fill="#FBBF24" opacity="0.8"/>
|
|
80
|
+
<circle cx="58" cy="20" r="5" fill="#34D399" opacity="0.8"/>
|
|
81
|
+
<text x="86" y="24" font-family="ui-monospace, Menlo, monospace" font-size="12" fill="#64748B">argo search --json</text>
|
|
82
|
+
|
|
83
|
+
<!-- query line -->
|
|
84
|
+
<text x="24" y="68" font-family="ui-monospace, Menlo, monospace" font-size="13" fill="#475569">$</text>
|
|
85
|
+
<text x="42" y="68" font-family="ui-monospace, Menlo, monospace" font-size="13" fill="#E2E8F0">贵州茅台股价</text>
|
|
86
|
+
<rect x="360" y="52" width="144" height="24" rx="6" fill="#0B3B2E" stroke="#166534"/>
|
|
87
|
+
<text x="432" y="68" text-anchor="middle" font-family="ui-monospace, Menlo, monospace" font-size="11" fill="#34D399">domain: stock</text>
|
|
88
|
+
|
|
89
|
+
<!-- route nodes -->
|
|
90
|
+
<g transform="translate(24 92)">
|
|
91
|
+
<text x="0" y="0" font-family="ui-monospace, Menlo, monospace" font-size="11" fill="#64748B">ROUTE</text>
|
|
92
|
+
<rect x="0" y="12" width="110" height="28" rx="7" fill="#122033" stroke="#1E3A5F"/>
|
|
93
|
+
<text x="55" y="30" text-anchor="middle" font-family="ui-monospace, Menlo, monospace" font-size="11" fill="#38BDF8">sina_quote</text>
|
|
94
|
+
<rect x="122" y="12" width="128" height="28" rx="7" fill="#122033" stroke="#1E3A5F"/>
|
|
95
|
+
<text x="186" y="30" text-anchor="middle" font-family="ui-monospace, Menlo, monospace" font-size="11" fill="#38BDF8">tencent_quote</text>
|
|
96
|
+
<rect x="262" y="12" width="100" height="28" rx="7" fill="#1A1430" stroke="#3B2F6B"/>
|
|
97
|
+
<text x="312" y="30" text-anchor="middle" font-family="ui-monospace, Menlo, monospace" font-size="11" fill="#A78BFA">early-stop</text>
|
|
98
|
+
<path d="M 110 26 L 122 26" stroke="url(#route)" stroke-width="2"/>
|
|
99
|
+
<path d="M 250 26 L 262 26" stroke="url(#route)" stroke-width="2"/>
|
|
100
|
+
</g>
|
|
101
|
+
|
|
102
|
+
<!-- result card -->
|
|
103
|
+
<g transform="translate(24 156)">
|
|
104
|
+
<rect width="480" height="118" rx="12" fill="#101826" stroke="#243044"/>
|
|
105
|
+
<text x="16" y="28" font-family="-apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC, sans-serif" font-size="15" font-weight="600" fill="#E8EEF7">贵州茅台 1337.74 ↓ -1.56%</text>
|
|
106
|
+
<text x="16" y="52" font-family="ui-monospace, Menlo, monospace" font-size="11" fill="#64748B">source · sina_quote · 553ms · fact-ready</text>
|
|
107
|
+
|
|
108
|
+
<!-- score bars -->
|
|
109
|
+
<text x="16" y="82" font-family="ui-monospace, Menlo, monospace" font-size="10" fill="#64748B">selection</text>
|
|
110
|
+
<rect x="92" y="72" width="160" height="8" rx="4" fill="#1E2A3F"/>
|
|
111
|
+
<rect x="92" y="72" width="144" height="8" rx="4" fill="url(#barA)"/>
|
|
112
|
+
|
|
113
|
+
<text x="16" y="104" font-family="ui-monospace, Menlo, monospace" font-size="10" fill="#64748B">absorption</text>
|
|
114
|
+
<rect x="92" y="94" width="160" height="8" rx="4" fill="#1E2A3F"/>
|
|
115
|
+
<rect x="92" y="94" width="132" height="8" rx="4" fill="url(#barB)"/>
|
|
116
|
+
|
|
117
|
+
<text x="280" y="88" font-family="ui-monospace, Menlo, monospace" font-size="11" fill="#34D399">not a SERP shell</text>
|
|
118
|
+
<text x="280" y="106" font-family="ui-monospace, Menlo, monospace" font-size="11" fill="#94A3B8">digits + quote snapshot</text>
|
|
119
|
+
</g>
|
|
120
|
+
</g>
|
|
121
|
+
</svg>
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="420" height="64" viewBox="0 0 420 64" role="img" aria-labelledby="title desc">
|
|
2
|
+
<title id="title">README made with beautify-github-readme</title>
|
|
3
|
+
<desc id="desc">Compact project-native credit for the README redesign skill</desc>
|
|
4
|
+
<rect width="420" height="64" rx="12" fill="#0B1220" stroke="#1E2A3F"/>
|
|
5
|
+
<rect x="0" y="16" width="3" height="32" fill="#38BDF8"/>
|
|
6
|
+
<text x="20" y="28" font-family="ui-monospace, Menlo, monospace" font-size="10" fill="#64748B" letter-spacing="1.5">README MADE WITH</text>
|
|
7
|
+
<text x="20" y="48" font-family="-apple-system, BlinkMacSystemFont, Segoe UI, sans-serif" font-size="14" font-weight="600" fill="#E8EEF7">beautify-github-readme</text>
|
|
8
|
+
<circle cx="380" cy="32" r="10" fill="none" stroke="#38BDF8" stroke-width="1.5"/>
|
|
9
|
+
<path d="M376 32 L384 32 M380 28 L384 32 L380 36" stroke="#38BDF8" stroke-width="1.5" fill="none" stroke-linecap="round"/>
|
|
10
|
+
</svg>
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="1200" height="420" viewBox="0 0 1200 420" role="img" aria-labelledby="title desc">
|
|
2
|
+
<title id="title">Argo 问啥像啥</title>
|
|
3
|
+
<desc id="desc">四类真实路由:A股行情、影视、多语言、地理实体各自命中垂直源</desc>
|
|
4
|
+
|
|
5
|
+
<defs>
|
|
6
|
+
<linearGradient id="bg" x1="0" y1="0" x2="0" y2="1">
|
|
7
|
+
<stop offset="0%" stop-color="#070B14"/>
|
|
8
|
+
<stop offset="100%" stop-color="#0B1220"/>
|
|
9
|
+
</linearGradient>
|
|
10
|
+
</defs>
|
|
11
|
+
|
|
12
|
+
<rect width="1200" height="420" rx="28" fill="url(#bg)"/>
|
|
13
|
+
|
|
14
|
+
<text x="56" y="48" font-family="ui-monospace, Menlo, monospace" font-size="12" fill="#38BDF8" letter-spacing="2">PROOF · REAL ROUTES</text>
|
|
15
|
+
<text x="56" y="82" font-family="-apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC, sans-serif" font-size="26" font-weight="650" fill="#E8EEF7">问啥像啥 · 垂直源优先</text>
|
|
16
|
+
<text x="56" y="110" font-family="-apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC, sans-serif" font-size="14" fill="#64748B">同样是「搜索」,路由不同 · 答案形态不同 · 可信度字段跟输出一起回来</text>
|
|
17
|
+
|
|
18
|
+
<!-- card 1 finance -->
|
|
19
|
+
<g transform="translate(56 140)">
|
|
20
|
+
<rect width="260" height="230" rx="16" fill="#0D1526" stroke="#1E2A3F"/>
|
|
21
|
+
<rect x="16" y="16" width="64" height="22" rx="6" fill="#0B3B2E"/>
|
|
22
|
+
<text x="48" y="31" text-anchor="middle" font-family="ui-monospace, Menlo, monospace" font-size="10" fill="#34D399">FINANCE</text>
|
|
23
|
+
<text x="16" y="64" font-family="-apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC, sans-serif" font-size="15" font-weight="600" fill="#E8EEF7">贵州茅台股价</text>
|
|
24
|
+
<text x="16" y="92" font-family="ui-monospace, Menlo, monospace" font-size="11" fill="#64748B">domain</text>
|
|
25
|
+
<text x="16" y="112" font-family="ui-monospace, Menlo, monospace" font-size="13" fill="#38BDF8">stock_query</text>
|
|
26
|
+
<text x="16" y="142" font-family="ui-monospace, Menlo, monospace" font-size="11" fill="#64748B">engines</text>
|
|
27
|
+
<text x="16" y="162" font-family="ui-monospace, Menlo, monospace" font-size="12" fill="#CBD5E1">sina · tencent</text>
|
|
28
|
+
<text x="16" y="192" font-family="ui-monospace, Menlo, monospace" font-size="11" fill="#64748B">result shape</text>
|
|
29
|
+
<text x="16" y="212" font-family="-apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC, sans-serif" font-size="13" fill="#94A3B8">报价快照 · early-stop</text>
|
|
30
|
+
</g>
|
|
31
|
+
|
|
32
|
+
<!-- card 2 film -->
|
|
33
|
+
<g transform="translate(332 140)">
|
|
34
|
+
<rect width="260" height="230" rx="16" fill="#0D1526" stroke="#1E2A3F"/>
|
|
35
|
+
<rect x="16" y="16" width="52" height="22" rx="6" fill="#1A1430"/>
|
|
36
|
+
<text x="42" y="31" text-anchor="middle" font-family="ui-monospace, Menlo, monospace" font-size="10" fill="#A78BFA">FILM</text>
|
|
37
|
+
<text x="16" y="64" font-family="-apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC, sans-serif" font-size="15" font-weight="600" fill="#E8EEF7">Inception director</text>
|
|
38
|
+
<text x="16" y="92" font-family="ui-monospace, Menlo, monospace" font-size="11" fill="#64748B">domain</text>
|
|
39
|
+
<text x="16" y="112" font-family="ui-monospace, Menlo, monospace" font-size="13" fill="#A78BFA">film_search</text>
|
|
40
|
+
<text x="16" y="142" font-family="ui-monospace, Menlo, monospace" font-size="11" fill="#64748B">engines</text>
|
|
41
|
+
<text x="16" y="162" font-family="ui-monospace, Menlo, monospace" font-size="12" fill="#CBD5E1">imdb · itunes</text>
|
|
42
|
+
<text x="16" y="192" font-family="ui-monospace, Menlo, monospace" font-size="11" fill="#64748B">result shape</text>
|
|
43
|
+
<text x="16" y="212" font-family="-apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC, sans-serif" font-size="13" fill="#94A3B8">作品页 · 实体字段</text>
|
|
44
|
+
</g>
|
|
45
|
+
|
|
46
|
+
<!-- card 3 multilingual -->
|
|
47
|
+
<g transform="translate(608 140)">
|
|
48
|
+
<rect width="260" height="230" rx="16" fill="#0D1526" stroke="#1E2A3F"/>
|
|
49
|
+
<rect x="16" y="16" width="48" height="22" rx="6" fill="#0C2A3A"/>
|
|
50
|
+
<text x="40" y="31" text-anchor="middle" font-family="ui-monospace, Menlo, monospace" font-size="10" fill="#38BDF8">LANG</text>
|
|
51
|
+
<text x="16" y="64" font-family="-apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC, sans-serif" font-size="15" font-weight="600" fill="#E8EEF7">アニメ おすすめ</text>
|
|
52
|
+
<text x="16" y="92" font-family="ui-monospace, Menlo, monospace" font-size="11" fill="#64748B">query_lang</text>
|
|
53
|
+
<text x="16" y="112" font-family="ui-monospace, Menlo, monospace" font-size="13" fill="#38BDF8">ja · no zh-only</text>
|
|
54
|
+
<text x="16" y="142" font-family="ui-monospace, Menlo, monospace" font-size="11" fill="#64748B">engines</text>
|
|
55
|
+
<text x="16" y="162" font-family="ui-monospace, Menlo, monospace" font-size="12" fill="#CBD5E1">local_bing · ddg</text>
|
|
56
|
+
<text x="16" y="192" font-family="ui-monospace, Menlo, monospace" font-size="11" fill="#64748B">gate</text>
|
|
57
|
+
<text x="16" y="212" font-family="-apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC, sans-serif" font-size="13" fill="#94A3B8">避开中文专用源</text>
|
|
58
|
+
</g>
|
|
59
|
+
|
|
60
|
+
<!-- card 4 geo -->
|
|
61
|
+
<g transform="translate(884 140)">
|
|
62
|
+
<rect width="260" height="230" rx="16" fill="#0D1526" stroke="#1E2A3F"/>
|
|
63
|
+
<rect x="16" y="16" width="44" height="22" rx="6" fill="#2A2310"/>
|
|
64
|
+
<text x="38" y="31" text-anchor="middle" font-family="ui-monospace, Menlo, monospace" font-size="10" fill="#FBBF24">GEO</text>
|
|
65
|
+
<text x="16" y="64" font-family="-apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC, sans-serif" font-size="15" font-weight="600" fill="#E8EEF7">where is Eiffel Tower</text>
|
|
66
|
+
<text x="16" y="92" font-family="ui-monospace, Menlo, monospace" font-size="11" fill="#64748B">domain</text>
|
|
67
|
+
<text x="16" y="112" font-family="ui-monospace, Menlo, monospace" font-size="13" fill="#FBBF24">geo_places</text>
|
|
68
|
+
<text x="16" y="142" font-family="ui-monospace, Menlo, monospace" font-size="11" fill="#64748B">engines</text>
|
|
69
|
+
<text x="16" y="162" font-family="ui-monospace, Menlo, monospace" font-size="12" fill="#CBD5E1">openstreetmap · wiki</text>
|
|
70
|
+
<text x="16" y="192" font-family="ui-monospace, Menlo, monospace" font-size="11" fill="#64748B">result shape</text>
|
|
71
|
+
<text x="16" y="212" font-family="-apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC, sans-serif" font-size="13" fill="#94A3B8">坐标 · 实体定位</text>
|
|
72
|
+
</g>
|
|
73
|
+
</svg>
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="1200" height="400" viewBox="0 0 1200 400" role="img" aria-labelledby="title desc">
|
|
2
|
+
<title id="title">Argo 与其他搜索方式的差别</title>
|
|
3
|
+
<desc id="desc">左侧:模型自带搜索、AI 搜索、聚合搜索引擎给人看的总结页或链接清单;右侧:Argo 给 Agent 的证据 JSON 与可信度评分</desc>
|
|
4
|
+
|
|
5
|
+
<defs>
|
|
6
|
+
<linearGradient id="bg" x1="0" y1="0" x2="1200" y2="400" gradientUnits="userSpaceOnUse">
|
|
7
|
+
<stop offset="0%" stop-color="#070B14"/>
|
|
8
|
+
<stop offset="55%" stop-color="#0B1220"/>
|
|
9
|
+
<stop offset="100%" stop-color="#0E1730"/>
|
|
10
|
+
</linearGradient>
|
|
11
|
+
<linearGradient id="route" x1="0" y1="0" x2="1" y2="0">
|
|
12
|
+
<stop offset="0%" stop-color="#38BDF8" stop-opacity="0.15"/>
|
|
13
|
+
<stop offset="50%" stop-color="#38BDF8" stop-opacity="0.85"/>
|
|
14
|
+
<stop offset="100%" stop-color="#A78BFA" stop-opacity="0.7"/>
|
|
15
|
+
</linearGradient>
|
|
16
|
+
<linearGradient id="barA" x1="0" y1="0" x2="1" y2="0">
|
|
17
|
+
<stop offset="0%" stop-color="#38BDF8"/>
|
|
18
|
+
<stop offset="100%" stop-color="#34D399"/>
|
|
19
|
+
</linearGradient>
|
|
20
|
+
<pattern id="dots" width="24" height="24" patternUnits="userSpaceOnUse">
|
|
21
|
+
<circle cx="1" cy="1" r="0.8" fill="#38BDF8" opacity="0.12"/>
|
|
22
|
+
</pattern>
|
|
23
|
+
</defs>
|
|
24
|
+
|
|
25
|
+
<rect width="1200" height="400" rx="28" fill="url(#bg)"/>
|
|
26
|
+
<rect width="1200" height="400" rx="28" fill="url(#dots)"/>
|
|
27
|
+
|
|
28
|
+
<!-- column headers -->
|
|
29
|
+
<text x="48" y="44" font-family="ui-monospace, Menlo, monospace" font-size="13" fill="#64748B" letter-spacing="2.5">HUMAN-FACING · 给人看</text>
|
|
30
|
+
<text x="720" y="44" font-family="ui-monospace, Menlo, monospace" font-size="13" fill="#38BDF8" letter-spacing="2.5">AGENT-FACING · 给 Agent 吸收</text>
|
|
31
|
+
|
|
32
|
+
<!-- left: three default alternatives -->
|
|
33
|
+
<g id="default-1" transform="translate(48 68)">
|
|
34
|
+
<rect width="480" height="76" rx="10" fill="#0D1526" stroke="#1E2A3F"/>
|
|
35
|
+
<rect width="3" height="76" fill="#334155"/>
|
|
36
|
+
<text x="20" y="28" font-family="ui-monospace, Menlo, monospace" font-size="11" fill="#94A3B8">模型自带搜索</text>
|
|
37
|
+
<text x="20" y="54" font-family="-apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC, sans-serif" font-size="13" fill="#64748B">泛搜网页 → 拼一段长文本,塞回 Agent 上下文</text>
|
|
38
|
+
</g>
|
|
39
|
+
<g id="default-2" transform="translate(48 156)">
|
|
40
|
+
<rect width="480" height="76" rx="10" fill="#0D1526" stroke="#1E2A3F"/>
|
|
41
|
+
<rect width="3" height="76" fill="#334155"/>
|
|
42
|
+
<text x="20" y="28" font-family="ui-monospace, Menlo, monospace" font-size="11" fill="#94A3B8">AI 搜索(总结型)</text>
|
|
43
|
+
<text x="20" y="54" font-family="-apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC, sans-serif" font-size="13" fill="#64748B">总结页给人看;Agent 拿不到结构化证据</text>
|
|
44
|
+
</g>
|
|
45
|
+
<g id="default-3" transform="translate(48 244)">
|
|
46
|
+
<rect width="480" height="76" rx="10" fill="#0D1526" stroke="#1E2A3F"/>
|
|
47
|
+
<rect width="3" height="76" fill="#334155"/>
|
|
48
|
+
<text x="20" y="28" font-family="ui-monospace, Menlo, monospace" font-size="11" fill="#94A3B8">聚合搜索 / 搜索引擎</text>
|
|
49
|
+
<text x="20" y="54" font-family="-apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC, sans-serif" font-size="13" fill="#64748B">SERP 链接清单;无评分、无垂直门禁</text>
|
|
50
|
+
</g>
|
|
51
|
+
|
|
52
|
+
<text x="48" y="356" font-family="ui-monospace, Menlo, monospace" font-size="11" fill="#475569">default search answers people · argo answers agents</text>
|
|
53
|
+
|
|
54
|
+
<!-- vs badge -->
|
|
55
|
+
<circle cx="624" cy="196" r="26" fill="#0D1526" stroke="#38BDF8" stroke-width="2"/>
|
|
56
|
+
<text x="624" y="202" text-anchor="middle" font-family="ui-monospace, Menlo, monospace" font-size="15" fill="#38BDF8">vs</text>
|
|
57
|
+
|
|
58
|
+
<!-- right: argo proof card -->
|
|
59
|
+
<g id="argo-card" transform="translate(720 68)">
|
|
60
|
+
<rect width="432" height="288" rx="16" fill="#0D1526" stroke="#1E3A5F" stroke-width="1.5"/>
|
|
61
|
+
<!-- title bar -->
|
|
62
|
+
<rect width="432" height="36" rx="16" fill="#121A2B"/>
|
|
63
|
+
<rect y="20" width="432" height="16" fill="#121A2B"/>
|
|
64
|
+
<circle cx="20" cy="18" r="4.5" fill="#F87171" opacity="0.8"/>
|
|
65
|
+
<circle cx="36" cy="18" r="4.5" fill="#FBBF24" opacity="0.8"/>
|
|
66
|
+
<circle cx="52" cy="18" r="4.5" fill="#34D399" opacity="0.8"/>
|
|
67
|
+
<text x="70" y="23" font-family="ui-monospace, Menlo, monospace" font-size="12" fill="#64748B">argo search --json</text>
|
|
68
|
+
|
|
69
|
+
<!-- query line -->
|
|
70
|
+
<text x="20" y="66" font-family="ui-monospace, Menlo, monospace" font-size="13" fill="#475569">$</text>
|
|
71
|
+
<text x="36" y="66" font-family="ui-monospace, Menlo, monospace" font-size="13" fill="#E2E8F0">贵州茅台股价</text>
|
|
72
|
+
<rect x="296" y="52" width="116" height="22" rx="6" fill="#0B3B2E" stroke="#166534"/>
|
|
73
|
+
<text x="354" y="67" text-anchor="middle" font-family="ui-monospace, Menlo, monospace" font-size="11" fill="#34D399">domain: stock</text>
|
|
74
|
+
|
|
75
|
+
<!-- route nodes -->
|
|
76
|
+
<g transform="translate(20 84)">
|
|
77
|
+
<text x="0" y="0" font-family="ui-monospace, Menlo, monospace" font-size="10" fill="#64748B">ROUTE</text>
|
|
78
|
+
<rect x="0" y="10" width="92" height="26" rx="6" fill="#122033" stroke="#1E3A5F"/>
|
|
79
|
+
<text x="46" y="28" text-anchor="middle" font-family="ui-monospace, Menlo, monospace" font-size="10.5" fill="#38BDF8">sina_quote</text>
|
|
80
|
+
<rect x="104" y="10" width="104" height="26" rx="6" fill="#122033" stroke="#1E3A5F"/>
|
|
81
|
+
<text x="156" y="28" text-anchor="middle" font-family="ui-monospace, Menlo, monospace" font-size="10.5" fill="#38BDF8">tencent_quote</text>
|
|
82
|
+
<rect x="220" y="10" width="84" height="26" rx="6" fill="#1A1430" stroke="#3B2F6B"/>
|
|
83
|
+
<text x="262" y="28" text-anchor="middle" font-family="ui-monospace, Menlo, monospace" font-size="10.5" fill="#A78BFA">early-stop</text>
|
|
84
|
+
<path d="M 92 23 L 104 23" stroke="url(#route)" stroke-width="2"/>
|
|
85
|
+
<path d="M 208 23 L 220 23" stroke="url(#route)" stroke-width="2"/>
|
|
86
|
+
</g>
|
|
87
|
+
|
|
88
|
+
<!-- result card -->
|
|
89
|
+
<g transform="translate(20 136)">
|
|
90
|
+
<rect width="392" height="112" rx="10" fill="#101826" stroke="#243044"/>
|
|
91
|
+
<text x="14" y="22" font-family="-apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC, sans-serif" font-size="14" font-weight="600" fill="#E8EEF7">贵州茅台 1337.74 ↓ -1.56%</text>
|
|
92
|
+
<text x="14" y="42" font-family="ui-monospace, Menlo, monospace" font-size="10" fill="#64748B">source · sina_quote · 553ms · fact-ready</text>
|
|
93
|
+
<text x="14" y="62" font-family="ui-monospace, Menlo, monospace" font-size="9.5" fill="#94A3B8">{ "price": "1337.74", "credibility_fast": 0.86 }</text>
|
|
94
|
+
<text x="14" y="78" font-family="ui-monospace, Menlo, monospace" font-size="9.5" fill="#94A3B8"> "engine_outcomes": { "sina_quote": "ok" } }</text>
|
|
95
|
+
<text x="14" y="98" font-family="ui-monospace, Menlo, monospace" font-size="9.5" fill="#64748B">selection</text>
|
|
96
|
+
<rect x="86" y="90" width="120" height="6" rx="3" fill="#1E2A3F"/>
|
|
97
|
+
<rect x="86" y="90" width="108" height="6" rx="3" fill="url(#barA)"/>
|
|
98
|
+
<text x="230" y="98" font-family="ui-monospace, Menlo, monospace" font-size="10" fill="#34D399">not a SERP shell</text>
|
|
99
|
+
</g>
|
|
100
|
+
|
|
101
|
+
<!-- bottom cue -->
|
|
102
|
+
<text x="20" y="272" font-family="ui-monospace, Menlo, monospace" font-size="10.5" fill="#64748B">free-first · ~10ms cache · fast/auto/deep/budget</text>
|
|
103
|
+
</g>
|
|
104
|
+
</svg>
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="1200" height="360" viewBox="0 0 1200 360" role="img" aria-labelledby="title desc">
|
|
2
|
+
<title id="title">Argo 工作流</title>
|
|
3
|
+
<desc id="desc">从查询到统一 JSON:语言检测、路由、多引擎召回、RRF 融合、证据快评</desc>
|
|
4
|
+
|
|
5
|
+
<defs>
|
|
6
|
+
<linearGradient id="bg" x1="0" y1="0" x2="1200" y2="360" gradientUnits="userSpaceOnUse">
|
|
7
|
+
<stop offset="0%" stop-color="#070B14"/>
|
|
8
|
+
<stop offset="100%" stop-color="#0B1220"/>
|
|
9
|
+
</linearGradient>
|
|
10
|
+
<marker id="arr" markerWidth="8" markerHeight="8" refX="6" refY="3" orient="auto">
|
|
11
|
+
<path d="M0,0 L6,3 L0,6 Z" fill="#475569"/>
|
|
12
|
+
</marker>
|
|
13
|
+
</defs>
|
|
14
|
+
|
|
15
|
+
<rect width="1200" height="360" rx="28" fill="url(#bg)"/>
|
|
16
|
+
|
|
17
|
+
<text x="56" y="44" font-family="ui-monospace, Menlo, monospace" font-size="12" fill="#38BDF8" letter-spacing="2">HOW IT WORKS</text>
|
|
18
|
+
<text x="56" y="76" font-family="-apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC, sans-serif" font-size="24" font-weight="650" fill="#E8EEF7">一条查询的完整路径</text>
|
|
19
|
+
|
|
20
|
+
<!-- stage boxes row -->
|
|
21
|
+
<g font-family="-apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC, sans-serif">
|
|
22
|
+
<!-- 1 -->
|
|
23
|
+
<rect x="56" y="120" width="150" height="96" rx="14" fill="#0D1526" stroke="#1E2A3F"/>
|
|
24
|
+
<text x="131" y="152" text-anchor="middle" font-size="11" fill="#64748B" font-family="ui-monospace, Menlo, monospace">01</text>
|
|
25
|
+
<text x="131" y="178" text-anchor="middle" font-size="15" font-weight="600" fill="#E8EEF7">查询</text>
|
|
26
|
+
<text x="131" y="200" text-anchor="middle" font-size="11" fill="#64748B">改写可选</text>
|
|
27
|
+
|
|
28
|
+
<!-- 2 -->
|
|
29
|
+
<rect x="246" y="120" width="150" height="96" rx="14" fill="#0D1526" stroke="#1E3A5F"/>
|
|
30
|
+
<text x="321" y="152" text-anchor="middle" font-size="11" fill="#38BDF8" font-family="ui-monospace, Menlo, monospace">02</text>
|
|
31
|
+
<text x="321" y="178" text-anchor="middle" font-size="15" font-weight="600" fill="#E8EEF7">语言 + 域</text>
|
|
32
|
+
<text x="321" y="200" text-anchor="middle" font-size="11" fill="#64748B">检测 · 规则 · TF-IDF</text>
|
|
33
|
+
|
|
34
|
+
<!-- 3 -->
|
|
35
|
+
<rect x="436" y="120" width="150" height="96" rx="14" fill="#0D1526" stroke="#1E3A5F"/>
|
|
36
|
+
<text x="511" y="152" text-anchor="middle" font-size="11" fill="#38BDF8" font-family="ui-monospace, Menlo, monospace">03</text>
|
|
37
|
+
<text x="511" y="178" text-anchor="middle" font-size="15" font-weight="600" fill="#E8EEF7">多引擎召回</text>
|
|
38
|
+
<text x="511" y="200" text-anchor="middle" font-size="11" fill="#64748B">熔断 · 负缓存</text>
|
|
39
|
+
|
|
40
|
+
<!-- 4 -->
|
|
41
|
+
<rect x="626" y="120" width="150" height="96" rx="14" fill="#0D1526" stroke="#3B2F6B"/>
|
|
42
|
+
<text x="701" y="152" text-anchor="middle" font-size="11" fill="#A78BFA" font-family="ui-monospace, Menlo, monospace">04</text>
|
|
43
|
+
<text x="701" y="178" text-anchor="middle" font-size="15" font-weight="600" fill="#E8EEF7">RRF 融合</text>
|
|
44
|
+
<text x="701" y="200" text-anchor="middle" font-size="11" fill="#64748B">分阶恢复</text>
|
|
45
|
+
|
|
46
|
+
<!-- 5 -->
|
|
47
|
+
<rect x="816" y="120" width="150" height="96" rx="14" fill="#0D1526" stroke="#166534"/>
|
|
48
|
+
<text x="891" y="152" text-anchor="middle" font-size="11" fill="#34D399" font-family="ui-monospace, Menlo, monospace">05</text>
|
|
49
|
+
<text x="891" y="178" text-anchor="middle" font-size="15" font-weight="600" fill="#E8EEF7">证据快评</text>
|
|
50
|
+
<text x="891" y="200" text-anchor="middle" font-size="11" fill="#64748B">权威 · 密度 · 时效</text>
|
|
51
|
+
|
|
52
|
+
<!-- 6 -->
|
|
53
|
+
<rect x="1006" y="120" width="138" height="96" rx="14" fill="#122033" stroke="#38BDF8" stroke-opacity="0.5"/>
|
|
54
|
+
<text x="1075" y="152" text-anchor="middle" font-size="11" fill="#38BDF8" font-family="ui-monospace, Menlo, monospace">06</text>
|
|
55
|
+
<text x="1075" y="178" text-anchor="middle" font-size="15" font-weight="600" fill="#E8EEF7">统一 JSON</text>
|
|
56
|
+
<text x="1075" y="200" text-anchor="middle" font-size="11" fill="#64748B">Agent 可吸收</text>
|
|
57
|
+
</g>
|
|
58
|
+
|
|
59
|
+
<!-- arrows -->
|
|
60
|
+
<g stroke="#475569" stroke-width="1.5" fill="none" marker-end="url(#arr)">
|
|
61
|
+
<path d="M210 168 H240"/>
|
|
62
|
+
<path d="M400 168 H430"/>
|
|
63
|
+
<path d="M590 168 H620"/>
|
|
64
|
+
<path d="M780 168 H810"/>
|
|
65
|
+
<path d="M970 168 H1000"/>
|
|
66
|
+
</g>
|
|
67
|
+
|
|
68
|
+
<!-- bottom notes -->
|
|
69
|
+
<g transform="translate(56 260)">
|
|
70
|
+
<rect width="1088" height="64" rx="12" fill="#0D1526" stroke="#1E2A3F"/>
|
|
71
|
+
<text x="24" y="28" font-family="ui-monospace, Menlo, monospace" font-size="12" fill="#64748B">budget</text>
|
|
72
|
+
<text x="24" y="48" font-family="-apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC, sans-serif" font-size="13" fill="#CBD5E1">fast · auto · deep · budget</text>
|
|
73
|
+
|
|
74
|
+
<text x="280" y="28" font-family="ui-monospace, Menlo, monospace" font-size="12" fill="#64748B">cache</text>
|
|
75
|
+
<text x="280" y="48" font-family="-apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC, sans-serif" font-size="13" fill="#CBD5E1">内存 + SQLite · 热查询约 10ms</text>
|
|
76
|
+
|
|
77
|
+
<text x="580" y="28" font-family="ui-monospace, Menlo, monospace" font-size="12" fill="#64748B">recovery gate</text>
|
|
78
|
+
<text x="580" y="48" font-family="-apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC, sans-serif" font-size="13" fill="#CBD5E1">空结果可恢复 · 禁无关垂直源串味</text>
|
|
79
|
+
|
|
80
|
+
<text x="900" y="28" font-family="ui-monospace, Menlo, monospace" font-size="12" fill="#64748B">local + web</text>
|
|
81
|
+
<text x="900" y="48" font-family="-apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC, sans-serif" font-size="13" fill="#CBD5E1">联网 + 本机文件一体</text>
|
|
82
|
+
</g>
|
|
83
|
+
</svg>
|