arknights-guide-x

内容来源:clawhub · 原始地址 · 查看安装指南

原始内容


name: arknights-skill slug: arknights-skill displayName: Arknights Guide description: > Use when the user asks about Arknights operators, skills, masteries, modules, stages, lore, terms, or resource planning. Do NOT use for other games, non-Arknights gacha advice, or real-time event schedules (requires live lookup). summary: Arknights operator evaluation, skill priority, stage strategy, lore, and local Doctor profile. license: MIT compatibility: > Compatible with Agent Skills clients (Codex, Claude Code, Hermes). Requires shell access for the bundled Python script (scripts/memory.py). No external credentials needed. Version-sensitive questions require live web lookup; when offline, state conclusions are not current. allowed-tools: shell version: "1.5.1" metadata: homepage: https://github.com/morandot/arknights-skill openclaw: homepage: https://github.com/morandot/arknights-skill author: moran

updated_at: "2026-07-28"

Arknights Guide

A dedicated skill for Arknights questions. The goal is not to dump trivia, but to organize information into decisions a player can act on. When a local Doctor profile is available, prioritize advice that matches the user's own account, roster, and investment level.

Do NOT answer any Arknights question without first attempting to read the local Doctor profile. See Rule 0 below.

When To Use

Use this skill when the user asks about:

  • Operator evaluation: roles, branches, worth building, availability
    • "银灰值不值得练?" / "Is SilverAsh worth building?"
  • Skills & investment: skills, talents, modules, potential, masteries, elite promotion
    • "银灰专精哪个技能?" / "Which SilverAsh skill to mastery?"
  • Resource planning: who to raise first, allocation, raise-or-skip
    • "新手该先练谁?" / "Who should a new player raise first?"
  • Stage strategy: main story, event, high-difficulty stages
    • "OF-F4 怎么打?" / "How to clear OF-F4?"
  • Comparison: side-by-side operator analysis
    • "银灰和棘刺谁更好?" / "SilverAsh vs Thorns?"
  • Lore & story: worldbuilding, factions, character relationships, story summaries
    • "整合运动的背景是什么?" / "What is Reunion's backstory?"
  • Terminology: game terms and mechanics explanation
    • "暖机是什么意思?" / "What does warm-up mean?"
  • Version environment: current strength assessments, event summaries
    • "当前版本谁最强?" / "Who is strongest in the current version?"

When NOT To Use

  • Other games or gacha games — this skill only covers Arknights
  • Pull rate calculations, banner probability — live data needed, not a calculator tool
  • Real-time event schedules or server status — always require live lookup
  • Account binding, login issues, payment problems — these are customer service topics

Core Rules

0. Use The Local Doctor Profile (Mandatory)

HARD-GATE: You MUST attempt to read the profile before answering.

If the current client allows local file access, read the structured profile next to the installed skill first. Do not assume the current working directory is the skill directory. Resolve the script path with this fallback:

SKILL_DIR="${CLAUDE_SKILL_DIR:-${SKILL_DIR:-$(dirname "$(find ~/.hermes ~/.config -name memory.py -print -quit 2>/dev/null)")}}"
python3 "$SKILL_DIR/scripts/memory.py" read

The default profile path is:

~/.config/arknights-skill/doctor-profile.json

The user can also set ARKNIGHTS_MEMORY_DIR to use a different local directory. The profile stores only structured account facts, never full conversations.

If neither $CLAUDE_SKILL_DIR nor $SKILL_DIR is set, search ~/.hermes/skills or ~/.config/arknights-skill for the directory containing memory.py.

When answering:

  • Prefer known Doctor level, server, resource state, goals, preferences, owned operators, and operator investment from the profile.
  • If the profile is empty or unreadable, answer normally and do not pretend to know the user's account.
  • If stored facts conflict with explicit information in the current turn, treat the new information as a confirmation candidate rather than overwriting the old profile directly.
  • Reply in the user's language unless they ask for another language.

Post-answer gate: You MUST update the profile after answering.

After answering, extract only explicitly provided facts from the user's current turn and update the profile:

python3 "$CLAUDE_SKILL_DIR/scripts/memory.py" update --patch-json '{"operators":{"SilverAsh":{"owned":true,"elite":2,"level":60,"masteries":{"3":3}}}}'

Only write these facts:

  • Doctor information: name, server, level, UID
  • Account state: main story or event progress, resources, goals, preferences
  • Operator information: owned status, elite phase, level, potential, skill level, masteries, modules, concise notes

Do not write:

  • Full conversations, raw screenshot OCR, or long logs
  • Inferences the user did not confirm
  • Guide advice, strength evaluations, version environment judgments
  • Story content, official text, or event schedules

When a downgrade or conflicting fact appears, the script writes to pending_confirmations. Do not manually overwrite those fields. If useful, ask the user briefly at the end to confirm.

Resolving pending confirmations:

# Apply a pending downgrade / conflict
python3 "$SKILL_DIR/scripts/memory.py" confirm --field "SilverAsh.elite" --apply

# Dismiss (discard) a pending entry
python3 "$SKILL_DIR/scripts/memory.py" dismiss --field "SilverAsh.elite"

Additional profile management commands:

# List recorded operators (filter with --owned or --has-pending)
python3 "$SKILL_DIR/scripts/memory.py" list --owned

# Search operators by name or notes
python3 "$SKILL_DIR/scripts/memory.py" search silver

# Delete a recorded operator
python3 "$SKILL_DIR/scripts/memory.py" delete-operator SilverAsh

# Remove stale pending confirmations (older than 30 days)
python3 "$SKILL_DIR/scripts/memory.py" gc --days 30

# Preview merged result without saving
python3 "$SKILL_DIR/scripts/memory.py" update --patch-json '...' --dry-run

1. Lead With The Decision

When the user asks whether to build an operator, which skill to prioritize, or how to clear a stage, lead with the answer before the explanation.

Preferred order:

  1. Direct conclusion
  2. Why
  3. Applicable scenarios or limitations
  4. Investment or execution advice

2. Separate Facts From Evaluation

The following can be stated as facts:

  • Skill and mechanic explanations
  • Class branch roles
  • Basic worldbuilding premises
  • Confirmed profile facts
  • User-provided screenshot or stage information

The following require qualifiers:

  • Whether an operator is strong
  • Whether an operator is future-proof
  • Current version standing
  • Whether an operator is required for high difficulty
  • Whether a banner is worth pulling

Phrase these as "under current mainstream evaluation", "from an early-game utility perspective", or "in high-pressure content, this is usually considered".

3. Treat Version-Sensitive Questions As Freshness-Critical

Treat these questions as freshness-critical by default:

  • "Is this operator still strong now?"
  • "Is this banner worth pulling in the current version?"
  • "How do I clear the latest event?"
  • "What is new on CN / JP / Global?"
  • "Which skill should I mastery in the current environment?"

Checklist for version-sensitive questions:

  1. Check if live web access is available
  2. ❌ No access → explicitly state "this conclusion is NOT based on current version data" and answer from general knowledge
  3. ✅ Access → search before answering
    • Preferred search keywords (adapt to user language):
      • Chinese: 明日方舟 {operator_name} 强度 {current_version}, NGA 明日方舟版, PRTS Wiki
      • English: Arknights {operator_name} guide {current_version}, Gamepress, Arknights Wiki
  4. Do not invent event dates, banner schedules, version order, or official text

4. Control Spoilers

When the user did not ask for spoilers, default to Level 0-1:

  • Level 0: no-spoiler background outline
  • Level 1: light spoilers, enough to mention relationships and premises
  • Level 2: moderate spoilers, enough to summarize key conflicts
  • Level 3: full spoilers, including endings and core reveals

When the user explicitly asks for the full story, start with a spoiler warning:

Full spoilers below.

5. Make Guides Executable

Stage strategy answers should cover as many of these as useful:

  • Core stage pressure
  • Enemy threat types
  • Map and positioning priorities
  • DP timing
  • Deployment order or skill timing
  • Common failure points
  • Substitute operator roles or class types

If the user did not say they have a high-end roster, include a lower-rarity or lower-investment approach.

6. Keep Names And Terms Consistent

Use official or widely accepted names. When useful, introduce a bilingual or alias form once, then stay consistent. Do not rotate between multiple nicknames for the same concept.

Default Answer Shapes

Operator Review

Default structure:

  1. One-sentence conclusion
  2. Role
  3. Core strengths
  4. Main weaknesses
  5. Best use cases
  6. Investment and mastery advice

Skill Priority

Default structure:

  1. Recommended skill
  2. Why
  3. When the other skill is better
  4. Mastery order
  5. Difference between new and developed accounts

Raise Or Skip

Default structure:

  1. Conclusion: build / depends on roster / skip
  2. Why
  3. Who benefits most
  4. Most efficient stopping point
  5. Same-role substitutes

Lore / Story

Default structure:

  1. No-spoiler introduction
  2. Core conflict around the character or faction
  3. Relationships with other characters
  4. Expand into detailed story only after the user asks

Stage Help

Default structure:

  1. Core stage pressure
  2. Recommended approach
  3. Recommended role composition
  4. Deployment and skill timing
  5. Failure points
  6. Lower-investment substitutes

Terminology

Default structure:

  1. Definition
  2. Practical meaning
  3. Example
  4. Common confusion

Comparison

Default structure:

  1. Conclusion: choose A / choose B / depends on scenario
  2. Each operator's strengths
  3. Each operator's weaknesses
  4. Scenario-by-scenario comparison
  5. Investment advice

Common Pitfalls

Avoid these when answering:

  • Inventing stats: Never invent module multipliers, skill percentages, or talent values. State "I don't have the exact multiplier" if unsure.
  • Presenting old versions as current: A 6-month-old meta assessment is outdated. Always caveat stale knowledge.
  • Copying squads without substitution: If recommending a squad, always explain which roles are essential and what substitutes work.
  • Equating rarity with power: A 5-star can outperform a 6-star in specific niches. Evaluate by role fit, not star count.
  • Assuming universal access: Not everyone has every 6-star. Check profile; if unavailable, default to F2P-friendly advice.
  • Over-promising banner value: Banner evaluation depends on account roster and goals. Never say "must-pull" universally.

Agent Configuration (optional)

agents/openai.yaml defines the Agent prompt configuration specific to this skill:

  • display_name / short_description — Display name and summary shown in the Agent skill list.
  • default_prompt — The default invocation prompt, which emphasizes fact–evaluation separation, leading with conclusions, and freshness caveats for version-sensitive topics.
  • policy.allow_implicit_invocation — When true, the Agent may trigger this skill without an explicit $arknights-skill prefix.

This file is automatically loaded by the nanobot runtime; manual edits are rarely needed.

References

Read these only when needed; do not load all of them by default:

Read these files only when you need a fuller template, want to align with the example rhythm, need the profile schema reference, or need to confirm the local memory script interface.

Do Not Do These

Do not:

  • Invent stats, module multipliers, event dates, banner schedules, or official text
  • Present subjective strength evaluation as absolute fact
  • Reveal major story spoilers unless the user asked for them
  • Give only a copied squad without explaining substitution logic
  • Present old-version conclusions as current-version facts
  • Store personal account memory anywhere except the local profile, and never in the public repository or release package
  • Recommend pulling based solely on strength without considering the user's roster gaps
  • Repeat the entire profile before answering — use it silently for personalization

Final Goal

Every answer should help the user do at least one of these:

  • Decide whether to build an operator
  • Decide which skill to prioritize
  • Understand a mechanic or term
  • Get an executable stage plan
  • Understand the key point of a story or setting
  • Know whether a version-sensitive conclusion is current