十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

PostHog Signals 跨产品通用 Scout(signals-scout-general)完全指南:从冷启动到跨产品相关性报告的端到端设计

PostHog Signals 跨产品通用 Scout(signals-scout-general)完全指南:从冷启动到跨产品相关性报告的端到端设计 数据分析后端前端数据可视化大数据【免费下载链接】posthog:hedgehog: PostHog is the leading platform for building self-driving products. Our developer tools – AI observability, analytics, session replay, flags, experiments, error tracking, logs, and more – capture all the context agents need to diagnose problems, uncover opportunities, and ship fixes. Steer it all from Slack, web, desktop, or the MCP.项目地址https://gitcode.com/GitHub_Trending/po/posthog点击查看免费下载PostHog Signals 的 scout 舰队是一组按调度运行的 Agent每个 scout 负责审视一个 PostHog 项目的数据并把真正值得人工关注的发现以报告形式写入 Signals 收件箱。signals-scout-general是舰队中唯一的跨产品通用侦察兵它不深入某个单一产品表面而是寻找跨产品相关性以及任何专项 scout 都没有覆盖的空白区域并以报告作者身份直接 1:1 产出完整报告。读完本文你将掌握该 scout 的完整运行循环——冷启动定向Orient、项目覆盖地图Map、探索Explore、四态决策Decide、防镜头锁定Avoid lens-lock与收尾Close out以及支撑它的 scratchpad 记忆约定、报告渠道契约和协调器调度机制。定位通用主义者在舰队中的位置PostHog 在 products/signals/skills 目录下维护了两类技能面向用户的一等技能signals、inbox-exploration、authoring-scouts等以及名为signals-scout-*的scout 舰队——后者是无头 Signals Agent 在运行时加载进系统提示词中的默认技能覆盖错误追踪、日志、AI 可观测性、实验、功能开关、会话回放、Web 分析、调查问卷、APM、CSP 违规等几乎每个产品表面见 AGENTS.md。signals-scout-general在这一舰队中的角色由它的 frontmatterdescription直接定义Cross-product Signals scout. Looks for cross-product correlations and explores the surfaces the per-product specialist scouts dont cover.即两件事跨产品相关性cross-product correlations与专项 scout 不覆盖的表面。当没有专项 scout 在运行时整个覆盖地图都是它的职责范围当有专项 scout 运行时它把专项深挖的表面留给它们在未来的 tick 处理scout-runs-list中近期运行的skill_name显示了当前的活跃阵容自己则专注于相关性分析或空白表面。报告渠道它不是一个发信号的 scoutsignals-scout-general是舰队中**第一批走上报告渠道report channel**的 scout 之一其 frontmatter 的allowed_tools明确列出allowed_tools: - emit_report - edit_report这意味着它不会向管道发射弱信号legacy 的emit_signal通道而是直接把研究完成的发现以SignalReport的形式 1:1 写入收件箱并对每份报告端到端负责——正如 SKILL.md 正文所说youve done the research, so you own each report 1:1 end-to-end rather than firing weak signals for a pipeline to cluster. 相应地报告门槛也更高只有当你愿意以一份人类会去行动的独立收件箱条目来为某个发现背书时才值得提交报告。从 AGENTS.md 可以确认整个规范舰队都已迁移到报告渠道且报告渠道契约字段 schema、安全性 × 可行动性状态映射、审查者路由、非幂等性警告、编辑规则统一由 harness 的系统提示词scout_harness/prompt.py注入而不作为每个 scout 的本地副本重复存放。因此本 scout 只保留与自身领域相关的报告框架。前置条件与兼容性SKILL.md 的 frontmattercompatibility字段给出了该 scout 的运行前提运行环境为带 PostHog MCP 的 Claude 沙箱需要的 MCP 权限范围scope包括signal_scout:read只读研究signal_scout_internal:write用于 scratchpad 的 remember/forgetsignal_scout_report:write用于 emit-report/edit-report因为该 scout 直接通过报告渠道撰写报告llm_skill:read标准 analytics 读取权限使用的 MCP 工具族project-profile-get、runs-list、runs-retrieve、scratchpad-search、scratchpad-remember、scratchpad-forget、emit-report、edit-report、members-listfrontmattermetadata.owner_team: signalsOrient三笔廉价读取完成冷启动每次运行的第一步是用最低成本建立上下文。SKILL.md 给出了三个冷启动读取工具工具作用使用注意scout-project-profile-get返回确定性的项目快照在用产品、近期活动、集成、带触达量与突发指标的热门事件、收件箱报告数只是快速提示不是全部真相它偏向已配置实体dashboard、flags、experiments、pipelines 等且滞后于近期才上线的产品应作为起点而非完整地图scout-scratchpad-search读取历次运行沉淀的持久观察优先读取pattern:general:coverage-map即项目覆盖地图可用textkeyword搜索对 key 与 content 做 ILIKE 匹配scout-runs-list查看本 scout 及同门兄弟的近期运行摘要先略读摘要只有当摘要提到你正在考虑的内容时才拉取scout-runs-retrieve深入单次运行Map the project构建并维护覆盖地图profile 与top_events的视野是有限的——它们对会话回放、日志、tracing、收入以及错误追踪的状态等产品整体视而不见这些数据不在 profile 枚举范围内并且滞后于近期上线的产品。SKILL.md 明确要求不要信任它们是完整的要用只读 MCP 工具自己动手建图并保持地图新鲜。有两样东西会不断演化团队的产品组合采用新产品、关闭旧产品以及 PostHog 自身的产品供给新产品带来新 MCP 工具。而唯一可靠、且随二者同步增长的基座是MCP 工具面tool surface——a tool family that wasnt there last time is a strong hint of a product worth folding into the map.发现discovery的摊还策略详见 references/discovery.md。发现是摊还的不是每次运行都做还没有pattern:general:coverage-map早期运行本次运行专门做广度扫描然后写地图地图存在且新鲜跳过发现读地图、挑一个活跃表面、去调查在后续运行间轮换地图已过期约每周或项目明显变化重新做感官复核sense-check重跑广度扫描、浏览 MCP 工具里自上次以来新增的能力只更新漂移的部分。关键原则保持有界bounded——发现是定位orientation不是调查几笔廉价读取就够深度留给未来的运行。广度扫描事件分类学 工具面两笔廉价读取完成了大部分工作1. 事件分类学event taxonomy。通过read-data-schemaevents读取该团队捕获的事件名——事件名本身就揭示了哪些产品在用事件分类学中的信号对应的在用产品$exception错误追踪Error tracking$ai_generation/$ai_span/$ai_*LLM 分析AI 可观测性$pageview/$pageleave/$web_vitalsWeb 分析$snapshot/ 会话活动会话回放$feature_flag_called功能开关$csp_violationCSP 报告高量级自定义事件产品分析2. MCP 工具面。浏览可用工具MCP 自身的search/tools发现机制。上次没有、这次出现的query-*或产品工具族是发现 PostHog 上线了新产品的信号——把它们纳入地图并探测团队是否在使用。两者再与 profile 的已配置实体部分dashboards、flags、experiments、surveys、pipelines、warehouse sources、cohorts配对就能同时回答什么已配置、什么在产生数据、什么现在可查询。探测分类学无法展示的表面有几类产品不会干净地在事件列表里自我宣告需要直接探测每个表面一次廉价读取错误追踪query-error-tracking-issues-listissue 数与近期活动$exception量级本身说明不了 issue 状态会话回放query-session-recordings-list会话是否在录制、最近有多近日志query-logs按服务/严重级别看是否有量Tracing / APMquery-apm-spans是否有 OTel spansLLM 分析query-llm-traces-list实时 traces而不只是$ai_*计数收入事件分类学中的收入事件或 profile 中的 warehouse Stripe 数据源数据仓库profile 的external_data_sources更深的结构通过execute-sql查system.information_schema.*。当遇到没有任何工具覆盖的表面时值得记一条mcp-gap:scratchpad 笔记见 references/conventions.md——这可能是一个舰队未来需要的能力。写覆盖地图把发现持久化为一条单独的耐久条目原地覆盖key 固定为pattern:general:coverage-map。要让它对未来运行可行动每个在用产品带大致量级/最近出现时间与一行这里值得看什么显式列出缺席的产品这样未来运行不必重新探测以及上次感官复核的日期。discovery.md 给出的示例形状key: pattern:general:coverage-map content: 2026-06-22 discovery (team has NO specialist scouts — general owns all). LIVE: error_tracking (~12k $exception/day, 40 issues, watch new-issue bursts); web_analytics ($pageview ~80k/day, 3 channels); session_replay (recording, ~1.5k/day); feature_flags (22 active). ABSENT (skip until a refresh): llm_analytics (no $ai_*), apm (no spans), revenue (no Stripe source), surveys, csp. Last full sense-check 2026-06-22; re-check ~weekly or on a visible project change / new MCP tool family.未来运行先读这张地图跳过缺席产品在活跃表面间轮换注意力——这正是把每日一次的通用侦察兵变成一周覆盖整个项目、而非反复检查一个角落的机制且能随团队与 PostHog 两侧的变化保持跟进。此外如果scout-runs-list显示没有兄弟专项 scout 在运行说明你是该项目上唯一的 scout——此时地图必须覆盖每一个在用产品而不只是专项之间的缝隙。Explore选有趣的跟下去覆盖地图告诉什么在运行scratchpad 告诉什么是常态近期运行告诉什么已被覆盖。在此基础上挑选有趣的方向跟进并在撰写报告前用具体查询验证假设可用的验证工具有query-trends、query-funnel、query-error-tracking-issues-list、read-data-schema、inbox-reports-list、execute-sql等。两条主线的分工有专项 scout 运行时把专项深挖的表面留给他们未来的 tick——近期运行的skill_name展示了活跃阵容错误追踪、日志、AI 可观测性、实验、功能开关、会话回放、Web 分析、调查问卷等均有专项你的时间花在跨产品相关性或无专项覆盖的表面上无专项运行时整个覆盖地图都是你的职责范围横向作业而非收窄到一个角落。Decide四态分类 报告/记忆/跳过在撰写之前先搜收件箱——该发现可能已存在报告inbox-reports-list再用inbox-reports-retrieve拉取最接近的匹配。然后对每个候选发现走决策分支编辑Edit收件箱已有同主题报告时用scout-edit-report——追加一条带你最新证据的笔记或重写你本人撰写的报告的标题/摘要。这是存在匹配时的默认动作不要铸造近重复。撰写Author收件箱无覆盖或已知问题出现了会改变结论的新证据时用scout-emit-report。一个完整验证的跨产品相关性是天然适配对象——相关性是两条一起运动的序列通过charts同时附加两者并在一个独立段落中引用使它们并排渲染。务必设置suggested_reviewers用scout-members-list解析责任人每个成员带已解析的github_login在reviewer:前缀下缓存这是报告抵达人类的方式留空则报告无人认领、很可能被错过。报告渠道的完整契约字段 schema、安全性 × 可行动性状态映射、审查者路由、非幂等性注意、编辑规则由 harness 提示词携带本节只补充跨产品相关性特有的部分。记忆Remember低于报告门槛但值得带往未来或想记录排查过什么、为何排除时用scout-scratchpad-remember。跳过Skipscratchpad 或收件箱已覆盖。四态分类器来自 conventions.mdreferences/conventions.md 定义了把每个候选发现对照历史运行、收件箱与 scratchpad 分类的标准是 Decide 的底层决策框架Net new全新——无历史运行、无收件箱报告、无 scratchpad 条目覆盖。若通过报告门槛 →emit-report撰写Material update on an existing report现有报告的重大更新——已有报告覆盖上一轮你写的或管道报告但你有新证据不同来源的佐证、新部署相关性、矛盾数据、范围的实质升级 → 用edit-report用append_evidence追加新观察、append_note附上解读或重写你撰写的报告的title/summary。不要铸造近重复Same fact already covered同一事实已覆盖——现有报告已捕捉相同证据形态、无变化 → 跳过。可选地重写一条既有 scratchpad 条目以确认该主题保持安静同 key 新内容 幂等刷新Already-addressed or noise已处理或噪音——scratchpad 有条目带addressed:/noise:/dedupe:前缀并命名了 issue id 与 team aware 备注 → 跳过并在总结中注明由 scratchpad 覆盖。Scratchpad 记忆约定无标签用 key 前缀编码scratchpad 没有标签也没有 TTL——条目是按团队持久化的散文以字符串为 key复用 key 会原地重写条目。因此类别要编码在 key 前缀里。合并 SKILL.md 与 conventions.md 两张表完整的前缀词汇表如下前缀用途pattern:该团队数据通常如何形态化的耐久观察基线等noise:应忽略的模式单用户、仅开发环境、反复出现但无修复路径addressed:团队确认已修复、或团队已翻篇的话题dedupe:用具体 issue/指纹闸住未来运行避免重复提交allowlist:已审核、scout 永不重新浮出表面的实体not-in-use:该产品团队未使用的结案备忘mcp-gap:scout 注意到的 MCP 表面缺口值得在未来评审中提出report:记录你撰写的报告的report_idkey 为report:domain:entity使下次运行编辑/去重而非重复提交reviewer:缓存的已解析负责人小写 GitHub login 或user_uuidkey 为reviewer:domain:area让报告更快路由到人类格式prefix:domain:entity例如pattern:error_tracking:baseline、noise:logs:rabbitmq-deploy-window、dedupe:csp_violations:a1b2c3d4。舰队中常见的domain值包括error_tracking、warehouse、experiments、llm_analytics、web-analytics、feature-flags、logs、surveys、revenue_analytics、csp_violations、observability_gaps、session-replay、pipelines、health、anomaly_detection——不是封闭集合专项或自定义 scout 可以自造标签并复用前缀但应匹配该表面既有条目已用的标签而不是发明变体。幂等刷新是记忆系统的核心机制复用 key 会在原地更新条目并刷新updated_at——用它来确认一条安静观察而不产生重复条目。报告 vs scratchpad 条目的选择矩阵情境动作已确认、形态良好的发现且无现有报告覆盖撰写报告emit-report现有报告已覆盖且你有新证据edit-report追加笔记或重写你撰写的报告观察到了模式但还不能作为 1:1 报告背书pattern:前缀的 scratchpad 条目继续调查已排查并排除重查会浪费未来运行noise:或addressed:前缀的 scratchpad 条目scratchpad 或收件箱已覆盖且无变化跳过在总结中注明问题当前安静但值得稍后再查用同 key 重写现有条目带新时间戳与条件值得付出的条目形状好条目是对未来运行可行动的下一个 scout 读了会因此改变行为。conventions.md 给出了正反示例key: dedupe:error_tracking:019de34e-2026-05-01 content: 2026-05-01: surfaced UndefinedTable on access_control_propertyaccesscontrol (issue 019de34e-e2a3-7e53-80d0-8ccdd0866a36) — 434 users hit it 11:31-13:22 UTC, then stopped. If a future run sees this issue still firing, escalate; if its been quiet since 13:22, treat as already-surfaced.它有效的原因带日期、点名实体 id、给出明确条件仍在触发 → 升级安静 → 跳过、有精确时间锚点key 前缀使它能被textdedupe:或texterror_tracking一键搜到。坏条目则如 keynote-1、内容 we have errors today, FYI——无可行动性、无实体、无条件、key 不带类别下一个运行既找不到它也无法行动。内容建议写成 Markdown人类直接阅读这些条目用标题、列表、inline code标注 id比一大段散文更易扫读。跨项目噪音模式以下噪音在所有 PostHog 项目中成立除非看到真正的升级否则跳过conventions.md 完整清单单用户、单会话错误——一个用户、一次出现、无其他信号几乎总是个人浏览器怪癖开发环境异常突发——service或properties.env为dev/local/test的$exception事件高计数先过滤再权衡沙箱内部 Docker / agentsh 错误——DockerTimeoutExpired、沙箱同步失败属 harness 内部操作而非用户可见单会话触达的 KEA store-path 错误——前端逻辑状态怪癖除非 distinct_user 计数上升否则不构成用户影响已知的上游提供商错误Anthropic / OpenAI 限流等——已有历史 scratchpad 条目覆盖除非量级或形态有实质变化否则不重复提交。团队自己的 scratchpad 会随 scout 学习不断扩展这份列表按项目补充。防镜头锁定与收尾Avoid lens-lock防镜头锁定如果最近几轮总是回到同一个镜头lens刻意换一个。每个 scout 按自己的调度运行不必在一次运行中覆盖所有内容——你的任务是在数据中跟随有趣的方向而不是仪式性地轮换镜头。Close out收尾如果你撰写或编辑了报告用一段话总结做了什么 为什么如果没有一句话即可。harness 会把总结写入运行记录行scout-runs-list是未来运行与分析读取它的方式。调度与运行机制源码级印证从 scout_coordinator.py 的源码结构可以印证 SKILL.md 所依赖的运行时约束每个 scout 有自己的SignalScoutConfig行每(team, skill_name)一个携带run_interval_minutes调度默认 1440即每 24 小时与last_run_at时间戳协调器每次 tick 会收集到期运行_collect_planned_runs源码 L327按最逾期优先most-overdue first派发并受MAX_RUNS_PER_TICK源码 L70常量值为 1000运行时可被 flag payload 覆盖限制每个到期 scout 成为一次RunSignalsScoutWorkflow子运行到期判定源码 L668 附近now - last_run_at run_interval_minutes * 60last_run_at为 None 时立即到期暂停一个 scout 是 config 上的enabledFalse调慢则是增大run_interval_minutes——两者都可通过scout-config-updateMCP 工具调整。调度机制与 SKILL.md 的每个 scout 按自己的调度运行你不需要在一次运行中覆盖一切互为表里通用 scout 的任务边界由协调器按频率保证而运行内的工作由本技能约束。总结一份值得独立成文的跨产品侦察手册signals-scout-general的完整方法论可以压缩为一句话用覆盖地图定位在用产品用 scratchpad 记忆区分信号与常态用收件箱去重然后用报告渠道 1:1 提交你愿意背书的跨产品发现。它的设计取舍——廉价冷启动、摊还式发现、四态决策、前缀化记忆、报告门槛高于弱信号管道——不仅是这一个 scout 的规范也被 AGENTS.md 指定为编写新 scout时的参考模板Usesignals-scout-generalas the template if your scout is broad。如果你想基于它定制自己的 scoutauthoring-scouts 技能提供了从适配、从零编写到运行姿态配置调度、dry-run、网络访问、写权限、Slack 投递、结构化输出的完整操作手册而 discovery.md 与 conventions.md 这两份捆绑引用则分别承载了如何确认项目真正在用哪些产品与如何决定每个候选发现的去处这两项最核心的操作知识。赞分享数据分析后端前端数据可视化大数据【免费下载链接】posthog:hedgehog: PostHog is the leading platform for building self-driving products. Our developer tools – AI observability, analytics, session replay, flags, experiments, error tracking, logs, and more – capture all the context agents need to diagnose problems, uncover opportunities, and ship fixes. Steer it all from Slack, web, desktop, or the MCP.项目地址https://gitcode.com/GitHub_Trending/po/posthog点击查看免费下载相关推荐PostHog Signals Scout 报告通道契约emit_report / edit_report 实战指南PostHog Signals Scout 报告通道契约 emit_report / edit_report 实战指南 导读 本文讲解 PostHog Sig数据分析后端前端数据可视化大数据PostHog Signals Scout 编写实战从适配官方 Scout 到从零构建测量型 Scout 的完整指南PostHog Signals Scout 编写实战从适配官方 Scout 到从零构建测量型 Scout 的完整指南 导读 PostHog 的 Signals数据分析后端前端数据可视化大数据PostHog Signals 产品分析侦察兵signals-scout-product-analytics漏斗、留存与生命周期的行为回归自动值守PostHog Signals 产品分析侦察兵signals scout product analytics漏斗、留存与生命周期的行为回归自动值守 Pos数据分析后端前端数据可视化大数据创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表