Token导航 LogoToken导航TokenDH.com
研究检索只读github未标认证来源可访问clear审计提醒

streakstreak 搜索

Agent Skill

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

总安装

364

周安装

15

GitHub Stars

404

下载量

119
CodexClaudeCursorGemini CLI

安装说明

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

GitHub

来源数

3

许可证

MIT

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

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

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

命令行安装

复制命令到本机终端执行。不同来源提供的安装方式可能略有差异;本站展示可直接复制的安装命令,安装前请核对来源页面。

skills.shnpx skills
npx skills add https://github.com/ooiyeefei/ccc --skill streak

简介

streak 搜索用于查找、检索和筛选相关信息。

  • 适合在 Codex、Claude、Cursor、Gemini CLI 中根据关键词或任务场景快速定位候选结果。
  • 通过 npx skills add 命令从指定 GitHub 仓库安装并使用。
  • 安装前需确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写操作。
  • 建议结合原始 README 和仓库内容核验具体用法和功能边界。

SKILL.md

Streak

A universal, flexible challenge tracking system for Claude Code. Track any personal challenge with intelligent insights and cross-challenge learning detection.

Works for any challenge type: Learning, Building, Fitness, Creative, Habit, or Custom.


Quick Start

Trigger phrases -> Flows:

User SaysFlow
"new challenge", "start a streak", "track a goal"Flow 1: New Challenge
"check in", "log progress", "update my streak"Flow 2: Check-in
"list challenges", "show all challenges"Flow 3: List
"switch to [name]", "change challenge"Flow 4: Switch
"show stats", "my progress"Flow 5: Statistics
"show insights", "cross-challenge"Flow 6: Insights
"export calendar", "create reminders"Flow 7: Calendar
"reset challenge", "start fresh"Flow 8: Reset
"pause [name]", "put on hold"Flow 9: Pause
"archive [name]", "shelve challenge"Flow 10: Archive
"resume [name]", "reactivate"Flow 11: Resume
"setup notifications", "telegram reminders"Flow 12: Notifications
"setup telegram bot", "deploy telegram", "streak-telegram"Flow 13: Telegram Bot Deploy

Data Storage

All data in .streak/ folder:

.streak/
├── config.md                     # Global settings
├── active.md                     # Current challenge pointer
└── challenges/
    └── [challenge-id]/
        ├── challenge-config.md   # Metadata, goal, progress
        ├── challenge-log.md      # Progress log with summary
        ├── today.md              # Today's session context
        ├── backlog.md            # Ideas to try
        ├── preferences.md        # Type-adaptive setup
        ├── context.md            # Linked resources
        ├── insights.md           # Auto-generated insights
        └── sessions/
            └── session-XXX/
                └── notes.md      # Session notes

File templates: See references/file-templates.md


Challenge Types

TypeBest ForKey Questions
LearningCourses, books, skills"Any aha moments?", "Progress on milestones?"
BuildingProjects, shipping"What did you ship?", "Any blockers?"
FitnessWorkouts, health"What exercises?", "How did body feel?"
CreativeArt, writing, music"What did you create?", "Any inspiration?"
HabitRoutines, consistency"Did you complete it?", "How did it feel?"
CustomAnything elseUser-defined questions

Type details: See references/types.md


Flow 1: New Challenge

  1. Initialize .streak/ folder if needed
  2. Ask type: Learning, Building, Fitness, Creative, Habit, or Custom
  3. Basic info: Name, goal, cadence (daily/every N days/weekly)
  4. Type-specific questions: See references/types.md
  5. Create files: All templates pre-filled based on answers
  6. Set active and confirm

Detailed steps: See references/flows-detailed.md


Flow 2: Check-in

Two modes: Pre-session (planning) and Post-session (wrap-up)

Pre-Session Mode

  1. Load context: Read active challenge, config, today.md, preferences, backlog
  2. Show status: Session #, streak, days since last, on-track/due/overdue
  3. Quick context: Energy/time, specific focus or "surprise me", constraints
  4. Optional research: For Building/Learning types
  5. Ideation: Type-adaptive suggestions based on energy and backlog
  6. Prepare session: Create session folder and notes template

Post-Session Mode (user says "done")

  1. Wrap-up questions: What worked on, how it went, what's next, key learning
  2. Type-specific questions: See references/types.md
  3. Save: Update session notes, challenge-config, challenge-log, backlog
  4. Generate insights: Patterns, streaks, cross-challenge connections
  5. Check achievements: See references/achievements.md
  6. Completion message: Progress summary, achievements earned, insights

Shortcuts during flow:

SayAction
"Just research"Only research step
"Skip to suggestions"Skip research
"I know what I'm doing: [idea]"Skip ideation
"Done" / "Finished" / "Back"Jump to wrap-up
"Quick check-in"Minimal logging

Detailed steps: See references/flows-detailed.md


Flow 3: List Challenges

Display challenges grouped by status, sorted by priority then recency.

Default: Show active + paused challenges With --all flag: Include archived challenges

Sorting order (within each group):

  1. Priority (higher number first, default 0)
  2. Last check-in (most recent first)

Display format:

## Active Challenges
| | Name | Type | Pri | Streak | Last Check-in | Sessions |
|---|------|------|-----|--------|---------------|----------|
| * | python-courses | Learning | 10 | 5 days | 1 day ago | 3 |
|   | home-fitness | Fitness | 5 | 2 days | 2 days ago | 8 |

## Paused Challenges
|   | stories-to-novels | Writing | 0 | - | 10 days ago | 5 |

(2 archived challenges hidden - use --all to show)

* = Active challenge
Pri = Priority (edit in challenge-config.md)

With --all flag, also show:

## Archived Challenges
|   | old-project | Building | 0 | - | 2 months ago | 20 |

Flow 4: Switch Challenge

  1. Validate challenge exists
  2. Update active.md
  3. Load new challenge context
  4. Confirm with status

Flow 5: Statistics

Show for active challenge:

  • Progress: Sessions, days since start, completion rate
  • Streaks: Current, longest, average gap
  • Patterns: Best day, best time, average length
  • Achievements: Earned badges with dates
  • Backlog: Completed, in-progress, pending items

Flow 6: Cross-Challenge Insights

Analyze ALL challenges to detect:

  1. Compound Learning: Skills from one challenge enabling another
  2. Skill Transfer: Same concepts across challenges
  3. Cross-Domain: Correlations between different types
  4. Patterns: Best days, productivity trends
  5. Suggestions: Personalized recommendations

Insight formats: See references/achievements.md


Flow 7: Calendar Export

Generate .ics file with check-in reminders:

  • Frequency based on cadence
  • 30-day look-ahead (configurable)
  • Works with Google, Apple, Outlook calendars

Template: See references/file-templates.md


Flow 8: Reset Challenge

Archives current progress and starts fresh:

  • Archives log as challenge-log-archived-[date].md
  • Archives sessions folder
  • Resets streak counters
  • Keeps preferences, context, backlog intact

Flow 9: Pause Challenge

Temporarily pause a challenge (plan to resume later):

  1. Validate challenge exists and is active
  2. Update challenge-config.md: set **Status:** paused
  3. If pausing the active challenge:

- List other active challenges - Prompt: "Paused [name]. Switch to another challenge?" - If yes, run Flow 4 (Switch)

  1. Confirm: "Challenge [name] paused. Use /streak-resume [name] to reactivate."

Use cases: Seasonal challenges, focusing on other priorities, taking a break


Flow 10: Archive Challenge

Move challenge to long-term storage (out of daily view):

  1. Validate challenge exists and is not already archived
  2. Update challenge-config.md: set **Status:** archived
  3. If archiving the active challenge:

- List other active challenges - Prompt: "Archived [name]. Switch to another challenge?" - If yes, run Flow 4 (Switch)

  1. Confirm: "Challenge [name] archived. Use /streak-list --all to see archived challenges."

Use cases: Completed goals, abandoned challenges, historical record


Flow 11: Resume Challenge

Bring a paused or archived challenge back to active:

  1. Validate challenge exists and is paused or archived
  2. Update challenge-config.md: set **Status:** active
  3. Ask: "Make [name] your active challenge?"

- If yes, update active.md

  1. Check days since last check-in:

- If 7+ days: Award:muscle: Comeback badge

  1. Confirm: "Challenge [name] is now active. Ready to check in?"

Note: Resuming does NOT reset streak - it continues from where you left off.


Flow 12: Notifications Setup

Set up push notifications for due/overdue check-ins via Telegram.

Step 1: Create Telegram Bot

  1. Open Telegram and message @BotFather
  2. Send /newbot and follow prompts
  3. Copy the bot token (looks like 123456789:ABCdefGHI...)

Step 2: Get Chat ID

  1. Message @userinfobot on Telegram
  2. Copy your chat ID (a number like 123456789)

Step 3: Configure

Add to .streak/config.md:

## Notifications (Optional)

- **Notifications:** enabled
- **Telegram Bot Token:** 123456789:ABCdefGHI...
- **Telegram Chat ID:** 123456789

Step 4: Schedule Notifications

Option A: Cron (Linux/Mac)

# Run daily at 9am
0 9 * * * cd /path/to/project && python .streak/../tools/streak-notify.py

Option B: GitHub Actions

# .github/workflows/streak-notify.yml
name: Streak Reminder
on:
  schedule:
    - cron: '0 9 * * *'  # 9am UTC daily
jobs:
  notify:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-python@v5
        with:
          python-version: '3.11'
      - run: python tools/streak-notify.py .streak

Step 5: Test

python tools/streak-notify.py /path/to/.streak

Detailed steps: See tools/streak-notify.py header comments.


Flow 13: Telegram Bot Deploy

One-command deployment of the interactive Telegram bot with Docker.

Prerequisites (User Must Complete First)

  1. Create Telegram Bot: Message @BotFather → /newbot → save token
  2. Get Chat ID: Message @userinfobot → save Id number
  3. Message your bot: Send /start to your bot (required before it can message you)
  4. Create .env file in your project root: cat >.env << EOF TELEGRAM_BOT_TOKEN=your-bot-token ALLOWED_USERS=your-chat-id EOF
  5. Docker must be installed and running

Flow Steps

  1. Verify prerequisites:

- Check .env file exists in project root - Check TELEGRAM_BOT_TOKEN is set (not empty/placeholder) - Check Docker is available (docker --version) - If any missing, show specific instructions and stop

  1. Locate skill tools directory: # Plugin location (typical paths) ~/.claude-code/plugins/ccc-skills@ccc/streak/tools/ # Or within the ccc repo if running locally
  2. Copy bot files to project root: cp [tools-dir]/streak-bot.py./streak-bot.py cp [tools-dir]/Dockerfile./Dockerfile cp [tools-dir]/docker-compose.yml./docker-compose.yml
  3. Ensure.gitignore protects secrets: # Add if not present echo ".env" >>.gitignore
  4. Start the bot: docker-compose up -d --build
  5. Verify bot is running: docker-compose ps docker-compose logs --tail=20
  6. Confirm to user: ✅ Telegram bot deployed! Bot is running in Docker and will auto-restart on reboot. Commands: - docker-compose logs -f # View logs - docker-compose restart # Restart bot - docker-compose down # Stop bot Open Telegram and send /start to your bot to test!

Error Handling

IssueResponse
No.env fileShow: "Create.env first with TELEGRAM_BOT_TOKEN and ALLOWED_USERS"
Empty tokenShow: "TELEGRAM_BOT_TOKEN in.env is empty - add your bot token from @BotFather"
Docker not foundShow: "Docker not installed. Install from https://docker.com"
Docker not runningShow: "Docker daemon not running. Start Docker Desktop or run: sudo systemctl start docker"
Port conflictShow: "Another service using the port. Stop other bots first: docker-compose down"

Achievements

Streak Badges

BadgeRequirement
:fire: First Flame3-day streak
:fire::fire: On Fire7-day streak
:fire::fire::fire: Unstoppable30-day streak
:gem: Diamond Streak100-day streak

Milestone Badges

BadgeRequirement
:footprints: First StepFirst check-in
:star: Dedicated10 sessions
:100: Centurion100 sessions

Special Badges

BadgeRequirement
:link: ConnectedFirst cross-challenge insight
:muscle: ComebackResume after 7+ days
:mortar_board: GraduateComplete challenge goal

Full list: See references/achievements.md


Error Handling

SituationResponse
No .streak/ folder"No challenges found. Say: Start a new challenge"
No active challengeList available challenges, prompt to switch or create
Challenge not foundList available, suggest closest match

Design Philosophy

Your challenges are interconnected. Your fitness affects your work. Your learning enables your building. Your habits shape your creativity.

Streak detects cross-challenge connections - patterns you might miss:

  • "Morning workouts correlate with productive coding days"
  • "Skills from 'Learn Rust' enabled progress in 'Build CLI Tools'"

This is the unique value - not just tracking, but understanding how challenges interact.

One Place, All Challenges

Put ALL challenges in ONE .streak/ folder, regardless of life area:

.streak/challenges/
├── work-project      # Work
├── morning-fitness   # Health
├── learn-rust        # Learning
└── daily-meditation  # Habit

Use /streak-switch to navigate. Use /streak-insights to discover connections.

Don't create separate .streak/ folders for different challenges. That defeats the purpose.


Best Practices

  1. Keep challenges together - One .streak/ folder for ALL challenges (work, health, learning, etc.)
  2. Be specific in goals - "Complete Rustlings" > "Learn Rust"
  3. Start sustainable - Every 2-3 days is easier than daily
  4. Use today.md - Set context before sessions
  5. Maintain backlog - Ideas for low-energy days
  6. Review insights - Check weekly to see patterns
  7. Celebrate streaks - Achievements are real motivation
  8. Reset guilt-free - Archiving is progress, not failure
  9. Cross-pollinate - Run multiple challenges to find connections

Reference Files

For detailed content, see:

FileContains
references/file-templates.mdAll file templates and structures
references/types.mdType-specific questions, preferences, ideation
references/flows-detailed.mdStep-by-step flow instructions
references/achievements.mdAchievement system, insight generation

Examples

30 Days of AI/ML (Building)

Type: Building
Goal: Ship one AI-powered micro-app per day
Cadence: Daily
Stack: Python, TypeScript, Claude Code

Learn Rust (Learning)

Type: Learning
Goal: Complete Rustlings and build a CLI tool
Cadence: Every 2 days
Resources: Rustlings, The Rust Book

Morning Workout (Fitness)

Type: Fitness
Goal: Build consistent strength training habit
Cadence: Daily (with rest days)
Equipment: Home gym - dumbbells, pull-up bar

Daily Sketching (Creative)

Type: Creative
Goal: Draw one sketch per day for 100 days
Cadence: Daily
Medium: Digital art (Procreate)

Morning Meditation (Habit)

Type: Habit
Goal: Meditate 10 minutes every morning
Cadence: Daily
Trigger: After coffee, before email

适合场景

01

用户想查找某类 Agent Skill 时

02

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

03

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

04

需要参考平台分布和安装热度时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

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

能力 4

补充不同宿主或平台的使用分布数据

能力 5

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

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

平台分布

Claude Code

27.29%
按下载量换算32

Antigravity

23.3%
按下载量换算28

Gemini CLI

16.66%
按下载量换算20

OpenCode

11.85%
按下载量换算14

trae

6.9%
按下载量换算8

Codex

2.97%
按下载量换算4

安全审计

Gen Agent Trust Hub

可疑

Socket

通过

Snyk

可疑

权限和风险

只读

该 Skill 主要提供规则、说明或参考内容,本身偏只读;真正读写文件、联网或执行命令仍取决于宿主 Agent 的任务。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。

来源信息

继续浏览同类 Skills