跳到正文
cccskills
免费在 GitHub 公开

post-daily-new-issues

Use when a human explicitly requests the daily on-call issue digest from a named issue tracker for a configured Slack channel. Not for posting without explicit human authorization for that run.

中文简介正在准备中。当前显示原文说明。

集成工具Slack
查看安装方法

包含的文件(2)

  • SKILL.md5.3 KB
  • agents/openai.yaml201 B

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Post daily new issues

Contract

FieldBound contract
TriggerA human explicitly requests the daily on-call issue digest; a scheduled invocation may prepare the run but must not use credentials or post without explicit human authorization for that run.
AuthorityRemote: posts one Slack message in the configured channel; requires explicit human invocation. Preview the bounded issue-tracker query, destination channel, release URL, and posting consequence before using credentials.
Side effectRead only the stated UTC window from the stated issue-tracker scope and, only when it contains issues, create one Slack message in the configured channel containing the total and at most three issue bullets.
DoneIf the window contains no issues, make no Slack mutation; otherwise, prove that the configured channel received one message containing the release URL, total issue count, and top three issue counts.

Inputs

Require the UTC window start and end, the name of the issue tracker the digest reads from, its organization and project scope, its read credentials, the destination Slack channel, Slack posting credentials, and the release URL. The end must be later than the start, both bounds must include an explicit UTC offset, and the issue-tracker and Slack credentials must be limited to the stated scopes. An optional human-supplied label may identify the digest; it must not alter the query window or destination. Do not infer a missing bound, scope, channel, credential, or release URL.

Procedure

  1. Before accessing either service, present the UTC window, the issue tracker's organization and project, Slack channel, release URL, and the consequence that a nonempty result creates one remote Slack message. Obtain explicit human authorization for this exact run; if it is absent, stop without using credentials. Done when: explicit human authorization is obtained for this exact run.
  2. Validate the time bounds, identifiers, release URL, and credential availability at their input boundaries. Stop on malformed, missing, or broader-than-stated input rather than widening the query or destination. Done when: all inputs are validated at their boundaries.
  3. Fetch issues created in the inclusive-start, exclusive-end UTC window from only the authorized issue-tracker organization and project. Preserve each issue's count and display identity needed for the digest; do not mutate the issue tracker. Done when: issue-tracker issues are fetched from the authorized scope within the stated window.
  4. If the fetch returns no issues, stop without calling Slack or emitting digest content. Done when: the empty-window no-op is confirmed or the fetch is nonempty.
  5. Compute the total number of fetched issues, rank them by count from highest to lowest, and retain no more than the first three for issue bullets. Build one message containing the release URL, the total, and each retained issue's display identity and count. Done when: the message is built with release URL, total, and top-three issue identities and counts.
  6. Preview the final message and confirm that its channel, URL, total, and issue counts derive from the validated inputs and fetched result. If any value cannot be traced to them, stop without posting. Done when: every message value is traced to validated inputs and the fetched result.
  7. Post the message once to the configured Slack channel. Treat Slack's successful response identifying the created message and channel as proof; do not post a second copy to obtain proof. Done when: Slack's response identifies the created message and channel.

Failure and recovery

Classify invalid or missing inputs and absent human authorization as blocked-input; make no remote request. Classify issue-tracker authentication, authorization, transport, pagination, or response errors as blocked-fetch; make no Slack mutation and do not report a partial digest. Classify message construction or provenance failures as blocked-digest; make no Slack mutation. Classify a definite Slack rejection as blocked-post; retain the prepared message in the result for a human-directed retry, but do not retry automatically. Classify a timeout or lost response after sending as post-unknown; do not retry because the first post may have succeeded, and report the channel and attempted message so a human can check for a duplicate before authorizing recovery. A confirmed Slack post has no automatic rollback: do not delete or amend it without a new explicit human request. Never report the done predicate when fetch completeness or posting proof is unavailable.

Output

For an empty issue-tracker window, a silent no-op with no Slack message or digest content. For success, posted with the UTC window, Slack channel, created-message identifier, release URL, total issue count, and the three-or-fewer posted issue identities and counts. For failure, the exact terminal classification (blocked-input, blocked-fetch, blocked-digest, blocked-post, or post-unknown) with the failed stage and available non-secret recovery evidence.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Use when explaining System V AMD64, ARM AAPCS, RISC-V psABI, stack frames, variadic calls, or FFI register rules. Not for the Rust FFI binding layer: use rust-ffi.

中文简介正在准备中。当前显示原文说明。

OutlineDriven/odin-claude-plugin372026年9月29日 更新

Use when configuring ADC sampling time, DMA-driven ADC, calibration, or DAC channel setup on bare-metal MCUs. Not for the DMA stream itself: use dma-baremetal.

中文简介正在准备中。当前显示原文说明。

OutlineDriven/odin-claude-plugin372026年9月29日 更新

af-xdp

免费

Use when creating AF_XDP sockets, configuring UMEM and XSK rings, writing an XDP redirect program, or choosing copy versus zero-copy mode. Not for full kernel bypass: use dpdk.

中文简介正在准备中。当前显示原文说明。

OutlineDriven/odin-claude-plugin372026年9月29日 更新

Use when a completed session needs an agent-environment retrospective. Not for an engineering retrospective from telemetry: use engineering-retrospective.

中文简介正在准备中。当前显示原文说明。

OutlineDriven/odin-claude-plugin372026年9月29日 更新

Use when a redacted, trimmed agent transcript must be appended to a GitHub PR or issue body, with human approval and preview. Not for automated or model-initiated insertion.

中文简介正在准备中。当前显示原文说明。

OutlineDriven/odin-claude-plugin372026年9月29日 更新

agents-md

免费

Use when a repo needs agent setup, AGENTS.md added or made lean, CLAUDE.md audited, or agent instructions scored or pruned. Not for remote, credential, publish, deploy, or irreversible changes.

中文简介正在准备中。当前显示原文说明。

OutlineDriven/odin-claude-plugin372026年9月29日 更新

查看 OutlineDriven 的全部技能

报告此技能的问题