Token导航 LogoToken导航

Agent Skill · 开发

nightly-recap(每晚回顾)

nightly-recap 用于补充开发相关能力,适合在 OpenClaw 中需要让 Agent 承接开发相关任务时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

nightly-recap 是开发类 Agent Skill,可用宿主为 OpenClaw,通过ClawHub获取,权限为可写文件;许可证为 MIT-0,第三方扫描有提醒项,按安装量在开发类的 21,746 个 Skill 里排第 11,042。

总安装 1,963周安装 81GitHub Stars 公开资料未说明下载 642核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
MIT-0
版本
3.0.1

安装方式

通过对话安装

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

请帮我安装这个 Agent Skill:nightly-recap(每晚回顾)
来源仓库:https://github.com/olivimic/nightly-recap
安装命令:
openclaw skills install nightly-recap
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

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

ClawHubOpenClaw
openclaw skills install nightly-recap

这个 Skill 是做什么的

开发类 Skill 面向写代码、改代码和排查问题,一般会读写仓库文件,部分还会执行构建或测试命令。

每天晚上发送一条 Telegram 消息,其中包含今天发布的内容、社交/系统状态、胜利和明天的焦点,完全可根据您的堆栈进行配置。

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 OpenClaw;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 openclaw skills install nightly-recap;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要可写文件,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

nightly-recap 怎么安装?

在终端执行 openclaw skills install nightly-recap。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

nightly-recap 支持哪些 AI 工具?

公开资料标注支持 OpenClaw。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

nightly-recap 需要什么权限?

权限级别是可写文件。该 Skill 可能写入或修改本地文件,使用前需要确认目标目录和修改范围。

nightly-recap 是免费的吗?

来源标注的许可证是 MIT-0。本站不代收任何费用,也不托管安装包;能否商用、要不要署名,以许可证原文为准。

nightly-recap 用的人多吗?

公开数据是累计安装 1,963 次,近一周安装 81 次,下载 642 次。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

nightly-recap 安全吗?

第三方扫描有提醒项,说明存在需要人工确认的行为。安装前请打开源码看清它读了什么、联网到哪里。

值得选的地方和要先想清楚的地方

值得选的地方

  • 专注 OpenClaw 一种宿主,触发方式和使用习惯不用来回切换。
  • 许可证明确为 MIT-0,商用和分发边界好判断。

先想清楚的地方

  • 第三方扫描存在提醒项或未通过项,需要人工逐条确认。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 OpenClaw,想直接扩展它能力的人。
  • 需要处理开发类任务、又不想每次都手写提示词的人。

不太适合

  • 需要厂商级技术支持和 SLA 的生产系统。

开发类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
skill-vetter

技能审查员 · OpenClaw

8,779,018986操作浏览器MIT-0通过
ontology

本体论 · OpenClaw

6,636,960576只读MIT-0通过
entra-app-registration

内部应用程序注册 · Codex、Claude

6,631,872764接触敏感数据未明确通过
entra-app-registration

内部应用程序注册 · Codex、Claude

3,757,680201接触敏感数据未明确通过
nano-banana-pro

纳米香蕉专业版 · OpenClaw

3,526,898364接触敏感数据MIT-0有提醒
nightly-recap

每晚回顾 · 本页

1,963—可写文件MIT-0有提醒

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

name
nightly-recap
version
3.0.1
description
Sends a single Telegram message each evening with what shipped today, social/system status, wins, and tomorrow's focus, fully configurable for your stack.
author
xeroai
tags
[telegram, briefing, automation, daily, solopreneur, evening, recap]
license
MIT

Nightly Recap

Sends one Telegram message each evening. What shipped today, system status, any wins worth noting, and tomorrow's focus, all in one message before you close the laptop.

Closes the loop on your day without a dashboard.

Built by Xero AI, xeroaiagency.com


What's New in v2

  • Reads your actual daily log, sources content from memory/YYYY-MM-DD.md instead of hard-coded Xero-specific paths. Works on any OpenClaw setup.
  • Three-tier check system, Tier 1 always runs (workspace reads). Tier 2 and 3 only run if you configure them. No silent failures.
  • Yesterday's log fallback, if today's log is empty, reads yesterday's for context.
  • Fail-silent on all optional integrations, analytics and revenue scripts disappear cleanly if they error.
  • "Tomorrow's one thing", always ends with a single priority pulled from your workspace.
  • Delivery receipt, writes last_run.log on every successful send for self-serve diagnostics.

Trigger Phrases

PhraseAction
nightly recapRun the nightly recap now (manual trigger)
reconfigure nightly-recapRe-run guided setup and overwrite config.json

First-Run Logic

Before running the pipeline, check for config:

  1. Does config.json exist in this skill directory?

- No → Start guided setup (see Guided Setup section below)

  1. Does config.json exist?

- Yes → Validate ALL required fields: - Is telegramBotToken empty, null, or still "YOUR_TELEGRAM_BOT_TOKEN"? → Guided setup from that field - Is telegramChatId empty, null, or still "YOUR_TELEGRAM_CHAT_ID"? → Guided setup from that field - All fields valid? → Proceed to pipeline


Guided Setup

When config doesn't exist or is invalid, run this conversation one question at a time:

"Hey, Nightly Recap needs a quick setup before it can run. I'll ask a few things one at a time.

First: What's your Telegram bot token? You can get one from @BotFather on Telegram, send /newbot and follow the prompts. Paste it here when ready."

Collect answers in order:

  1. telegramBotToken, bot token from @BotFather
  2. telegramChatId, chat ID from @userinfobot (send /start to get it)
  3. projectName, what to call this project in the recap (e.g., "My SaaS", "Side Project")
  4. timezone, e.g., "America/New_York" (default: "America/New_York")
  5. Optional: "Do you have an analytics script to run at end of day? Paste the full path, or skip." → analyticsScript
  6. Optional: "Do you have a revenue check script? Paste the full path, or skip." → revenueScript
  7. Optional: "Any community paths to summarize (e.g., Reddit tracking file, IH log)? Paste paths comma-separated, or skip." → communityPaths (array)

Write config.json from answers. Confirm:

"All set. Here's what I configured:
- Project: [projectName]
- Telegram: configured ✓
- Analytics: [configured / not configured]
- Revenue: [configured / not configured]
- Community: [configured / not configured]

Say 'nightly recap' to run a test."

Reconfigure Trigger

When the user says reconfigure nightly-recap:

  1. Announce: "Re-running Nightly Recap setup. I'll ask each question again and overwrite config.json."
  2. Run the full guided setup conversation above
  3. Overwrite config.json with new values

Main Pipeline

Step 1, Read config.json

Load config from the skill directory. Confirm all required fields are present.

Step 2, Tier 1: Workspace reads (always runs)

Read the following standard OpenClaw files:

  • Today's memory/YYYY-MM-DD.md, what the agent logged today
  • If today's file is empty or doesn't exist → read yesterday's memory/YYYY-MM-DD.md for context
  • If neither exists → "Nothing logged today. Your agent ran but didn't write to the daily log."
  • HEARTBEAT.md, for tomorrow's priority

Summarize what actually happened today from the log. What did the agent do? What shipped? What was flagged?

Step 3, Tier 2: Optional integrations (fail-silent)

Analytics (if config.analyticsScript is set):

  • Check path exists with fs.existsSync() before running
  • Run the script TWICE: once with --days 1 (24h data) and once with --days 7 (7-day data)
  • Capture both outputs separately
  • If it errors or returns nothing → omit the analytics line silently

Revenue (if config.revenueScript is set):

  • Check path exists with fs.existsSync() before running
  • Run script, capture output
  • If it errors or returns nothing → omit the revenue line silently

Step 4, Tier 3: Community (fail-silent)

If config.communityPaths[] is set:

  • For each path: check it exists with fs.existsSync(), then read and summarize
  • Skip any path that doesn't exist, no error

If not configured: community section omitted entirely.

Step 5, Tomorrow's priority

Read HEARTBEAT.md for the top checklist item or active task. If nothing found → read AGENTS.md for any active priorities. Always produces at least one "tomorrow" line, never blank.

Step 6, Compose the recap

Assemble a single Telegram message. Be specific — use real numbers and real events. This is Michael's end-of-day operational read, not a vague summary.

🌙 Nightly Recap, [Day, Date]

📋 Today:
   • [item 1 — most significant thing that shipped or happened]
   • [item 2]
   • [item 3, omit if nothing else notable]
   (pull from daily log, be specific — crons run, posts made, builds shipped, errors fixed)

💰 Revenue: [from revenueScript — all-time total + today's sales. e.g. "All-time: $2.00 · Today: $0 · 0 new sales"]
📊 Site (24h):
   • Views: [pageviews from --days 1 run]
   • Visitors: [unique visitors from --days 1 run]
   • Top page: [top page + hits from --days 1 run]
   • Conversions: [Book 1 purchase events from --days 1 run, or 0]
📊 Site (7d):
   • Views: [pageviews from --days 7 run]
   • Visitors: [unique visitors from --days 7 run]
   • Top page: [top page + hits from --days 7 run]
   • Conversions: [Book 1 purchase events from --days 7 run, or 0]
🤖 Reddit: [from communityPaths — current karma + best comment this week, omit if no data]
🗊 Twitter: [from communityPaths — recent reply activity, omit if no data]

⚠️ Flags: [anything broken, erroring, or needs attention tomorrow — omit if clean]
🎯 Tomorrow: [single top priority from HEARTBEAT.md or ACTIVE_TASKS.md]

Real numbers only. Run every configured script and read every community file before composing. Never say "not configured" — just omit the section if there's genuinely no data.

Step 7, Send to Telegram

Use scripts/send-message.js to deliver the recap:

node scripts/send-message.js --token "TOKEN" --chat "CHAT_ID" --message "MESSAGE"

Step 8, Write delivery receipt

On successful send, append one line to last_run.log in the skill directory:

2026-04-08T20:00:01Z OK nightly-recap sent

If delivery fails:

  1. Show the exact error
  2. Check token validity (401 = bad token, 400 = bad chat ID)
  3. Prompt: "Delivery failed, run 'reconfigure nightly-recap' to update your Telegram credentials."
  4. Write failure to log: 2026-04-08T20:00:01Z FAILED [error message]

Dry Run (First Trigger)

On the very first trigger after setup (check tracking.json → firstRunCompleted: false), run in dry-run mode:

[DRY RUN, nothing was sent]

Here's what I would have sent to Telegram:

---
🌙 Nightly Recap, [Day, Date]

📋 Today: Day 1, nothing logged yet. Your agent is running.
🎯 Tomorrow: [top item from HEARTBEAT or AGENTS]

→ Ready to go deeper? Co-Founder in a Box: xeroaiagency.com/skills
---

Ready to go live? Say 'nightly recap' again to send the real recap.

After the user confirms and the message sends successfully, set firstRunCompleted to true in tracking.json.


Cron Setup

To run automatically each evening, add a cron in OpenClaw:

Time: 20:00 (or your preferred wind-down time)
Timezone: Your local timezone
Type: isolated agentTurn
Prompt: Run nightly recap and send to Telegram.

Requires OpenClaw with agentTurn cron support. Check your version: openclaw --version


Troubleshooting

If the recap stops arriving, check last_run.log in the skill folder to see the last successful send time and any errors. Most issues are Telegram credential problems, run reconfigure nightly-recap to fix.


Config Reference

FieldRequiredDefaultDescription
telegramBotToken✅,Telegram bot token from @BotFather
telegramChatId✅,Your Telegram chat ID from @userinfobot
projectName✅,Your project name for the recap header
timezone✅America/New_YorkYour local timezone (IANA format)
analyticsScript❌,Full path to an analytics script (must output plain text)
revenueScript❌,Full path to a revenue check script (must output plain text)
communityPaths❌[]Array of file paths to read for community status

平台分布

OpenClaw

72.69%
按下载量换算467

安全审计

VirusTotal

未展示

ClawScan

可疑

Static analysis

通过

权限和风险

可写文件

该 Skill 可能写入或修改本地文件,使用前需要确认目标目录和修改范围。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在提醒或未通过项,安装前请自行复核。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills