# Deepseek Reason > Completion en modo razonamiento contra deepseek-reasoner (R1) de DeepSeek. Devuelve el chain-of-thought por separado de la respuesta final. Lee DEEPSEEK_API_KEY y degrada si falta o la API no responde. Fuente: https://skillsagentes.com/skills/ruvnet/ruflo/deepseek-reason Markdown: https://skillsagentes.com/skills/ruvnet/ruflo/deepseek-reason.md Repositorio: https://github.com/ruvnet/ruflo Autor: ruvnet Licencia: MIT Actualizado: hace 4 días Coste de contexto: 114 tok instalada, 627 tok al activarse, 627 tok con todos los archivos del bundle Bundle: 1 archivo, 2 KB Permisos que pide: bash ## Instalación Un skill son archivos markdown: los mismos archivos valen para cualquier agente y lo único que cambia es el directorio de destino, es decir la bandera `--agent`. Añade `-g` para instalarlo en todos los proyectos de la máquina. ```bash # Claude Code npx -y skills add ruvnet/ruflo --skill deepseek-reason --agent claude-code # Cursor npx -y skills add ruvnet/ruflo --skill deepseek-reason --agent cursor # Codex npx -y skills add ruvnet/ruflo --skill deepseek-reason --agent codex # Gemini CLI npx -y skills add ruvnet/ruflo --skill deepseek-reason --agent gemini # Windsurf npx -y skills add ruvnet/ruflo --skill deepseek-reason --agent windsurf # Cline npx -y skills add ruvnet/ruflo --skill deepseek-reason --agent cline ``` ## Qué hace - Envía un prompt al modelo de razonamiento `deepseek-reasoner` (R1) de DeepSeek vía `/v1/chat/completions`. - Devuelve el chain-of-thought (`reasoning_content`) separado de la respuesta final (`content`), sin que el llamador lo parsee. - Ignora `temperature`/`top_p`, que DeepSeek no soporta en modelos reasoner. - Lee `DEEPSEEK_API_KEY` del entorno y degrada con `status: degraded` si falta o la API no responde. ## Cuándo usarla - Para tareas de razonamiento en varios pasos: pruebas, planes, análisis de causa raíz o depuración difícil. - Cuando se quiere ver el razonamiento del modelo para auditarlo o verificar la respuesta final. - Cuando se tolera más latencia y coste que con deepseek-chat. ## Qué la activa - "Demuestra que la raíz de 2 es irracional con deepseek-reason" - "Analiza la causa raíz de este bug con deepseek-reason" ## Antes de instalar - Requiere la variable de entorno DEEPSEEK_API_KEY. - Necesita en el PATH: node - runs shell commands ## Archivos - SKILL.md — 2 KB ## SKILL.md Reproducido tal cual desde ruvnet/ruflo bajo MIT. Esta sección es el documento original y está en inglés. Wraps DeepSeek's reasoning model so ruflo callers can get an explicit chain-of-thought back with the final answer, without having to parse it out of the message content. Same subprocess-invocation shape as the sibling `deepseek-chat` skill. ## When to use - Multi-step reasoning tasks: proofs, plans, root-cause analysis, hard bug triage. - You want to *see* the model's thinking (for audit, for training data, or to sanity-check its final answer). - You can tolerate the higher latency and token cost of a reasoner vs `deepseek-chat`. ## Algorithm Implementation: [`scripts/reason.mjs`](../../scripts/reason.mjs). 1. Read `DEEPSEEK_API_KEY` from env. Degrade gracefully when missing. 2. POST to `/v1/chat/completions` with `{ model: 'deepseek-reasoner', messages, max_tokens? }`. Per DeepSeek's docs, `temperature`/`top_p` are ignored for reasoner models — this script does not forward them. 3. Extract `choices[0].message.content` AND `choices[0].message.reasoning_content`. 4. JSON output always includes `reasoning`; table mode omits it unless `--show-reasoning` is passed. 5. `reasoningTokens` (from `usage.completion_tokens_details.reasoning_tokens`) is surfaced separately so callers can attribute cost. ## Example ```bash node plugins/ruflo-deepseek-harness/scripts/reason.mjs \ --prompt "Prove that sqrt(2) is irrational." \ --format table --show-reasoning ``` Table output shows the reasoning block, then the answer. JSON mode returns: ```json { "status": "ok", "model": "deepseek-reasoner", "content": "sqrt(2) is irrational because …", "reasoning": "Assume for contradiction that sqrt(2) = p/q in lowest terms …", "finishReason": "stop", "usage": { "promptTokens": 14, "completionTokens": 812, "reasoningTokens": 640, "totalTokens": 826 } } ``` ## Dónde encaja - Categoría: [Automatización](https://skillsagentes.com/categorias/automatizacion.md) — Flujos de varios pasos que se ejecutan sin supervisión. - Creador: [ruvnet](https://skillsagentes.com/creators/ruvnet.md) — 275 skills en el directorio - [Todas las skills](https://skillsagentes.com/skills.md) - [Ranking de instalaciones](https://skillsagentes.com/ranking.md) ## Otras skills del mismo repositorio - [Harness Gepa](https://skillsagentes.com/skills/ruvnet/ruflo/harness-gepa.md): Inspecciona y audita genomas GEPA: carga y valida un genoma, renderiza el system prompt que compila, o clasifica los modos de fallo de una transcripción de ejecución. - [Deepseek Chat](https://skillsagentes.com/skills/ruvnet/ruflo/deepseek-chat.md): Completion de un solo turno contra el modelo deepseek-chat de DeepSeek vía /v1/chat/completions. Lee DEEPSEEK_API_KEY y degrada con status:degraded si falta o la API no responde. Para tareas sin razonamiento. - [Adr Index](https://skillsagentes.com/skills/ruvnet/ruflo/adr-index.md): Construye o reconstruye el índice de ADRs y su grafo de dependencias ejecutando scripts/import.mjs, en vez de cientos de llamadas MCP. - [Agntcy Status](https://skillsagentes.com/skills/ruvnet/ruflo/agntcy-status.md): Muestra el estado de la integración AGNTCY/SLIM/CASA: si los paquetes están instalados, qué transporte está activo y si el enforcement de CASA está habilitado. - [Security Scan](https://skillsagentes.com/skills/ruvnet/ruflo/security-scan.md): Ejecuta escaneos de seguridad completos sobre el código con las herramientas de seguridad de Ruflo, a profundidad quick, standard o deep. --- Skills Agentes · [Índice de páginas en markdown](https://skillsagentes.com/sitemap.md) · [Inicio](https://skillsagentes.com/index.md)