Skills Artificial Intelligence DeepSeek Reasoning

DeepSeek Reasoning

v20260902
deepseek-reason
Wraps DeepSeek's deepseek-reasoner model to expose chain-of-thought reasoning separately from the final answer. Enables multi-step reasoning tasks such as proofs, planning, root-cause analysis, and bug triage with explicit thinking output for audit or verification. Handles API key via environment, degrades gracefully when unavailable.
Get Skill
429 downloads
Overview

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.

  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

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:

{
  "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
  }
}
Info
Name deepseek-reason
Version v20260902
Size 2.45KB
Updated At 2026-09-05
Language