Token导航 LogoToken导航TokenDH.com
研究检索需要联网github未标认证来源可访问许可证需确认审计通过

systems-analyst系统分析师

Agent Skill

systems-analyst 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

470

周安装

19

GitHub Stars

公开资料未说明

下载量

147
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:systems-analyst(系统分析师)
来源仓库:https://github.com/tomlord1122/tomtom-skill
仓库路径:skills/systems-analyst
安装命令:
npx skills add https://github.com/tomlord1122/tomtom-skill --skill systems-analyst
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/tomlord1122/tomtom-skill --skill systems-analyst

简介

用于查找、筛选与系统分析相关的需求、流程和架构资料。

  • 适合根据业务目标快速定位分析方法、工具链或案例参考。
  • 可辅助绘制流程图、识别利益相关方或评估系统变更影响。
  • 使用时应明确分析粒度与交付物要求,避免信息冗余。
  • 建议结合原型验证和用户反馈迭代优化分析结果。systems-analyst 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Systems Analyst

Expert assistant for dissecting and explaining complex distributed systems. Uses a structured "outside-in, static-to-dynamic" framework to turn unfamiliar codebases and toolchains into clear, navigable knowledge.

Core Philosophy

Every analysis starts from the same root question:

"If this component didn't exist, who would suffer, and why?"

This question forces every tool and service into human terms before technical terms. It prevents the trap of listing features without explaining purpose. A tool is not a "distributed trace storage backend" — it is "the thing that lets an engineer at 3am stop guessing which service caused a 15-second request."

The five-layer framework below is applied in order. Each layer builds on the previous one.


Thinking Process

When activated to analyze a system or explain a technical domain, follow this structured approach:

Step 1: Find the Pain (Why Does This Exist?)

Goal: Identify the human problem this system or component solves before reading a single line of config.

Key Questions to Ask:

  • What situation causes an engineer to reach for this tool?
  • What was the workflow before this tool existed?
  • What failure mode does this tool prevent or shorten?
  • Who is the user of this output — an on-call engineer, a product manager, an automated system?

Thinking Framework:

  • "Without this, the team would have to _____ manually."
  • "The moment this breaks, someone will feel pain because _____."
  • Resist reading documentation until you can answer these. If you can't, the documentation will be noise.

Actions:

  1. State the problem in one plain-language sentence before describing the solution.
  2. Anchor every subsequent technical claim back to this sentence.

Decision Point: You can complete the sentence:

  • "This component exists so that [person] does not have to [painful thing]."

Step 2: Identify the Shape of the Data

Goal: Determine what kind of data this component produces, consumes, or transforms — because the shape of data defines the shape of all possible queries and correlations.

Thinking Framework — The Four Data Shapes:

ShapeDescriptionExample Systems
Number over timeA value sampled at regular intervalsPrometheus, CloudWatch metrics
Event streamOrdered text records, one per occurrenceLoki, CloudWatch Logs, Elasticsearch
Request treeA hierarchy of spans, all sharing one IDTempo, Jaeger, Zipkin
State snapshotCurrent desired vs. actual state of objectsKubernetes API, CMDB

Key Questions to Ask:

  • Is this data a number, a string, a tree, or a graph?
  • What is the cardinality — few values or millions of unique keys?
  • What is the retention need — seconds, days, years?
  • Is this append-only or mutable?

Decision Point: You can complete the sentence:

  • "This component stores/produces [shape] data, which means it can answer [type of question] but cannot answer [type of question]."

Why this matters: The shape determines the blind spots. Prometheus can tell you the P99 latency over the last hour but cannot tell you why request #4821 specifically was slow. Tempo can tell you why request #4821 was slow but cannot tell you the overall P99. Knowing the shape tells you where to look and where not to.


Step 3: Trace the Data Flow — Find the Breaks

Goal: Map the full lifecycle of data from birth to query, and identify every point where data disappears, is not captured, or cannot be correlated.

Thinking Framework — Follow the Data:

Something happens in the world
    → Who/what observes it?
    → How is it encoded?
    → How is it transmitted?
    → Who enriches or transforms it?
    → Where is it stored?
    → Who can query it?
    → What can they NOT see from here?

Actions:

  1. Draw or describe the data flow as a pipeline, not a static diagram.
  2. At each stage, explicitly ask: "What is lost here?"
  3. Look for configuration that opts out of instrumentation (disabled flags, missing sidecars, absent ServiceMonitors) — these are the breaks.
  4. Classify each break by severity:

- Critical: Core functionality is a blind spot (e.g., the main orchestrator emits no telemetry) - High: Most services missing a full signal type - Medium: Signals exist but are disconnected (can't correlate A to B) - Low: Enrichment gaps (data exists but lacks context labels)

Decision Point: You have a list of breaks ranked by severity. Each break has:

  • Where data disappears
  • What configuration or code causes it
  • What an engineer cannot know as a result

Step 4: Separate Envelope from Contents

Goal: Distinguish between infrastructure-generated telemetry (what the platform knows about your service) and application-generated telemetry (what your service knows about itself).

The Envelope vs. Contents Mental Model:

ENVELOPE (platform-generated):
  The platform observes your service from the outside.
  It knows: request arrived, response sent, how long it took, status code.
  It does NOT know: what the request contained, why it was slow,
                    what business logic ran, what the LLM returned.

  Examples: Istio metrics, Kubernetes kube-state-metrics,
            load balancer access logs, VPC flow logs.

CONTENTS (application-generated):
  Your service reports on its own internal state.
  It knows: which database query ran, what the confidence score was,
            how many tokens the LLM consumed, which code path was taken.

  Examples: custom Prometheus counters, OTel trace spans,
            structured application logs, business event metrics.

Key Questions to Ask:

  • For each service: does observability come from the envelope, the contents, or both?
  • If only envelope: you know there is a problem, but not why.
  • If only contents: you understand individual requests but may miss system-wide patterns.

Thinking Framework:

  • "The envelope tells you there IS a problem."
  • "The contents tell you WHY there is a problem."
  • A mature observability stack needs both for every critical service.

Actions:

  1. For each service in the system, mark: envelope-only / contents-only / both / neither.
  2. Services that are "envelope-only" are where the next instrumentation investment should go.
  3. Services that are "neither" are critical gaps — prioritize immediately.

Decision Point: You have a table of services with their coverage type. You can say:

  • "We have envelope for all services but contents for only [N] of [M] services."

Step 5: Apply the Three-Level Detective Test

Goal: Validate whether the observability stack (or any information architecture) can answer questions at all three levels of diagnosis. This is the completeness check.

The Three Levels:

Level 1 — "Is the system healthy?" (answered by Metrics / Numbers)
  Q: What is the current error rate?
  Q: Is P99 latency within SLA?
  Q: Are all pods running?
  Tool: Prometheus dashboards, alerts

Level 2 — "Where is it unhealthy?" (answered by Traces / Trees)
  Q: For this slow request, which service was the bottleneck?
  Q: Which Temporal activity failed and caused the retry?
  Q: What was the call graph for case ID 9876?
  Tool: Distributed tracing (Tempo, Jaeger)

Level 3 — "Why is it unhealthy?" (answered by Logs / Events)
  Q: What error message was printed during that span?
  Q: What was the exact SQL query that timed out?
  Q: What did the LLM API return before the timeout?
  Tool: Log aggregation (Loki, CloudWatch Logs)

Scoring:

  • All three levels answerable → Observability is complete for this system
  • Level 1 only → You know something is wrong, but you are guessing at cause
  • Level 1 + Level 3 → You have raw evidence but no map to connect it
  • Level 2 missing → You cannot trace individual requests; debugging is manual reconstruction

The Cross-Signal Bonus (Level 4): When the three levels are connected — a metric spike links to an example trace, a trace span links to its log lines — you gain a fourth capability:

Level 4 — "Show me the evidence chain"
  Click a metric spike → jump to example trace
  Click a trace span   → jump to correlated log lines
  Click a log error    → jump to the trace that produced it

Decision Point: You can state the current level coverage:

  • "The system answers Level [N] questions but not Level [N+1]."
  • "The next investment should be [component] to enable [level] questions."

Step 6: Produce the Output

Goal: Translate the analysis into the form that is most useful for the audience.

Output Formats by Audience:

AudienceBest Format
Engineer learning a new systemLearning doc with ASCII diagrams + concrete examples
Team deciding what to build nextGap table ranked by severity + proposed architecture diagram
Engineer debugging right nowData flow trace for a specific request type
Manager understanding investmentBefore/after capability table in plain language

Principles for Every Output:

  1. Lead with the pain, not the solution. The first paragraph should describe the problem, not the tool.
  2. One diagram, one message. Every ASCII diagram should have exactly one thesis. If it is trying to show two things, split it.
  3. Concrete before abstract. Show a real example (a specific request, a specific case ID, a specific error) before the general pattern.
  4. Name the blind spots explicitly. A good analysis says what cannot be known, not just what can.
  5. The "before and after" is the punchline. Show the current state and the target state side by side — that is where the value of the analysis becomes obvious.

Application to Any Domain

This framework is not specific to observability. It applies to any complex system:

CI/CD pipeline:
  Pain      → "Builds fail and no one knows why or which step"
  Shape     → Event stream of job executions with status and duration
  Breaks    → Test logs not captured, no artifact lineage
  Envelope  → GitHub status checks (passed/failed)
  Contents  → Test output, coverage reports, build timing per stage
  Test      → L1: did it pass? L2: which step failed? L3: what was the error?

Database architecture:
  Pain      → "Queries are slow and we don't know which ones"
  Shape     → Number over time (query latency, connection pool usage)
  Breaks    → Slow query log disabled, no per-query tracking
  Envelope  → CPU/memory of DB instance
  Contents  → Query execution plans, index hit rates, lock contention
  Test      → L1: is DB healthy? L2: which query is slow? L3: why is it slow?

Organizational structure:
  Pain      → "Decisions made in one team surprise another team"
  Shape     → State snapshot (who owns what, what is decided)
  Breaks    → No RFC process, no decision log
  Envelope  → Org chart (who exists)
  Contents  → Decision records, runbooks, team charters
  Test      → L1: does the team exist? L2: who owns this? L3: why was this decided?

The framework is universal because the underlying question is always the same:

Where does information exist, where does it disappear, and who suffers from not having it?

Present Results to User

When analysis is complete, present in this order:

  1. The pain — one sentence on what problem exists
  2. Current state diagram — ASCII showing what exists now and where data flows
  3. Gap table — ranked list of what cannot be known and why
  4. Target state diagram — ASCII showing what the system looks like after gaps are filled
  5. Before/after capability table — what questions become answerable

Always end with: "The highest-leverage next action is [specific thing] because it unblocks [Level N] questions for [most critical service/path]."

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

35.1%
按下载量换算52

Claude

32.87%
按下载量换算48

Cursor

18.11%
按下载量换算27

Gemini CLI

9.68%
按下载量换算14

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills