L’interface est localisée ; les présentations et documents des Skills sont traduits automatiquement par IA dans votre langue. Le code, les commandes, chemins et termes techniques restent en version originale, et le document de l’auteur fait foi.
Explorer les Skills
Données et recherche · SKILL.md

optional-local-agent

optional-local-agent

Operate DeepXiv's optional OpenAI-compatible LangGraph ReAct Agent for local paper search, reading, and multi-turn analysis.

Independent GitHub snapshot · Automated classification · Original documentation governs

Documentation de la Skill

GitHub

name: optional-local-agent description: "Operate DeepXiv's optional OpenAI-compatible LangGraph ReAct Agent for local paper search, reading, and multi-turn analysis." disable-model-invocation: true metadata: disco-role: operating license: MIT

Optional local Agent

Use this route when the task needs DeepXiv's local ReAct loop with a caller-selected OpenAI-compatible chat model. It owns the deepxiv_sdk.Agent class, its optional dependency boundary, provider request options, paper-context persistence, tool orchestration, budgets, and failure recovery.

Do not use this route for hosted Reader.agent_search* calls or deepxiv agent ... CLI configuration/query syntax; route those to the Reader/CLI sibling skills.

Fast route

  1. Run scripts/agent_dependency_probe.py before diagnosing an optional-install problem. It performs local import/spec checks only; it never calls an LLM or the paper service.
  2. Install the optional set with python -m pip install "deepxiv-sdk[agent]" (or [all]). The published 1.0.0 extras declare openai, langgraph, and langchain-core, but do not declare tiktoken, although deepxiv_sdk.agent.agent imports it at module load. Install tiktoken explicitly when the probe reports it missing.
  3. Construct Reader and pass it explicitly to Agent; reader is a required constructor argument in source. Supply the model API key to api_key, and use base_url for an OpenAI-compatible provider.
  4. For reasoning models used across tool rounds, set enable_thinking=False (or pass an equivalent provider field through extra_body) when the provider rejects reasoning content in non-final assistant messages.
  5. Keep max_llm_calls and max_time_seconds bounded. Preserve context across follow-up query calls unless reset_papers=True or reset_papers() is intentional.
  6. Follow the load-first and progressive-reading protocol in references/tool-protocol.md; consult references/troubleshooting.md for missing papers versus service failures.

Operating rules

  • The base package can expose Reader without the Agent. deepxiv_sdk.__init__ attempts the Agent import and silently omits Agent when an optional import raises ImportError; check dependencies rather than assuming the symbol exists.
  • Never put a key, token, private endpoint, checkout path, or environment name in a public skill or example. Pass secrets at runtime.
  • Treat add_paper() returning False as a recoverable missing/not-yet-indexed result. Do not treat it as proof that the ID is invalid forever; try a different ID or broader search. Genuine server/auth/rate-limit failures propagate from add_paper().
  • A tool result describing a malformed argument, an unloaded paper, or a missing section is recoverable and must not by itself trip the service circuit breaker. Repeated service-side result markers do trip it and force a tools-less final-answer call.
  • query() returns the graph's extracted answer, but catches graph exceptions and returns an Error: ... string. add_paper() has different behavior: expected not-found/bad-request cases return False, while genuine API failures propagate.

References

Skills enregistrées