Community生產力與協作github.com

alex20-create/resume-project

一個用於開啟既有專案工作階段的流程,會收集先前階段留下的資訊(如 Notion、Git、Obsidian 筆記庫、對話記錄、記憶體與專案檔案),交叉比對後摘要當前狀態,詢問今天想做什麼,並將答案傳遞給技能選擇工具(若已安裝)。

resume-project 是什麼?

此技能專為 AI 代理工作階段(如 Claude Code、Cursor、Codex)設計,用於在開啟新工作階段時,自動彙整先前階段散落的項目資訊。它會讀取但不寫入任何檔案或記憶體,支援從終端機存取 Git、GitHub API(無終端機時)、Notion 等專案管理工具、Obsidian 筆記庫、對話記錄、及記憶體等多種資料來源。技能會根據階段中實際可用的工具(而非環境名稱)動態選擇來源,並以簡潔摘要呈現每個專案的狀態、待辦事項與衝突點。最後,它會詢問使用者今天的目標,並將結果傳遞給工作階段結束技能或技能選擇工具,實現無縫接軌。開發者可用「let's pick up」、「where were we?」、「/resume-project」等指令觸發此技能。

相容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/alex20-create/session-routines/tree/HEAD/resume-project

Installed? Explore more 生產力與協作 skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

Resume project

當工作階段開啟時,先前階段的重要資訊散落在各處。本技能提供一條「回歸之路」:收集這些資訊、與最新的可用資料進行比對,並以數行摘要呈現,讓使用者無需記憶就能決定今天要做什麼。

技能運作由四項原則決定:

  • 唯讀。 它不會寫入任何檔案、筆記、資料庫或記憶體。因此它不需為每一步請求權限:讀取不會改變任何東西。將使用者電腦上的檔案複製到工作階段中以供讀取,視為讀取。唯一允許的寫入操作是 git fetch --prune,且僅在 references/claude-code.md 中指定時才能執行。授予工作階段存取新儲存庫的權限不僅僅是讀取:請勿自行執行(請參閱步驟 0 中的 GitHub 行)。其他外掛的鉤子可能在工作階段開啟時寫入(例如合併記憶體、儲存日誌),這並非本技能所為,無需提及,除非它改變了你即將讀取的來源。
  • 讀取檔案,不啟動工作流程。 許多技能在啟動時會寫入遙測資料或狀態、建立資料夾、詢問自己的輸出格式或以自己的問題結尾。當你知道某個技能儲存資料的位置時,直接讀取該檔案。只有在別無他法的情況下才啟動該技能,取得資料後跳過其最終問題與格式,並停止任何會執行寫入的步驟。
  • 優先遵循專案指示。 如果專案指示、CLAUDE.md 或使用者的偏好說明了狀態存放位置、可讀取的資料夾、衝突解決方式或當日規劃方式,則以此為優先。
  • 以提問和交接結尾。 工作階段結束技能(例如 wrap-up)會以說明工作階段可歸檔作結;本技能則以詢問今天想做什麼並將答案傳遞至步驟 6 作結。

0. 盤點:你實際能讀取哪些內容

不要根據環境名稱選擇來源。同一個工作階段可能同時存在於雲端、claude.ai 專案中並連接到使用者的電腦。在讀取任何內容之前,查看目前階段擁有的工具(也包括延遲載入的工具,透過搜尋來查找),並記錄以下哪些能力是具備的:

能力如何辨識能夠開啟的來源
儲存庫中的終端機工作資料夾為使用者的一個儲存庫,或存在連接到使用者電腦的終端機(device_bash 或類似工具),且儲存庫位於已連接的資料夾內Git 與遠端 (C),搭配 references/claude-code.md
無終端機的電腦檔案能夠列出並複製電腦檔案的工具,但沒有終端機筆記庫 (D)、階段日誌 (B,若設定有寫入) 和交接文件 (E,如果它們位於已連接的資料夾內),以及已連接資料夾內儲存庫的 CLAUDE.md (D)。不包含本機 Git
無終端機的 GitHub階段中安裝了 gh,或有工具可將儲存庫加入階段遠端上的 Pull Request、分支與提交 (C2)
專案管理工具存在 Notion 連接器或其他專案管理工具,加上說明或 CLAUDE.md 指出哪個資料庫或頁面存放專案狀態、下一步行動與任務 (A)
先前的對話能夠搜尋或列出對話的工具對話 (F),搭配 references/claude-ai.md
Claude Code 工作階段能夠列出或搜尋桌面應用程式工作階段的工具(list_sessions, search_session_transcripts, list_events 或類似工具)先前的工作階段 (F2),搭配 references/claude-code.md
已發布的成品能夠列出已發布成品、頁面或文件的工具(Artifact 搭配 list,或類似工具)儲存庫之外的交付物 (I)
記憶體上下文中的記憶體,或記憶體工具記憶體 (G)
claude.ai 專案上下文中的專案指示或檔案,或專案工具指示與檔案 (H)

參考文件說明了 Git (references/claude-code.md)、claude.ai 對話 (references/claude-ai.md) 以及由鉤子寫入的按專案階段日誌 (references/session-log.md) 的詳細資料。僅讀取你所擁有能力對應的參考文件,且僅在設定有寫入此類日誌時才讀取 session-log.md。如果某個參考文件說某項內容不存在(例如筆記庫、磁碟、Git),而盤點結果顯示它存在,則以盤點結果為準。如果參考文件缺失,則按照此文件的說明繼續進行。

如果階段有許多延遲載入的工具,請不要全部載入來進行盤點:搜尋表格中的關鍵字(notion、session、transcript、chat、memory、project、repository、artifact),並僅載入你將要使用的工具對應的結構描述。gh 不是階段工具,而是一個程式:使用 gh auth status 檢查。如果延遲載入工具的名稱在上下文中已可見,則從該清單中選擇並僅載入這些工具,無需搜尋。

此檔案中的來源代號 (A 到 I) 與 claude-code.md 中的代號 (A 到 H) 不同:此處的 E 是交接文件,而在該參考文件中 E 是 CLAUDE.md。當此檔案引用 claude-code.md 的某個類別時,會使用其名稱引用;請依名稱查找,而非依代號。

允許的資料夾。 僅讀取使用者連接到工作階段的資料夾,或使用者指示允許讀取、且階段實際能夠存取的資料夾。請勿為了解除阻塞而要求存取任何這些資料夾。將所有無法存取的內容整理到一個「提醒」行中:

  • 已連接資料夾外部的有用來源(例如,在沒有終端機的工作階段中,家目錄下的 ~/.gstack);
  • 指示允許讀取但尚未連接的資料夾(例如某個專案本身的資料夾)。如果其中一個資料夾屬於摘要中出現的專案,則加上說明:關於該專案,我們只知道專案管理工具所提供的資訊。

1. 是哪個專案

  • 一個儲存庫、一個資料夾或一個名稱。 如果工作階段位於某個儲存庫中,該儲存庫即為專案。如果使用者命名了一個專案,請在專案管理工具 (A) 和筆記庫 (D) 中進行不區分大小寫的搜尋,並嘗試使用記憶體提供的別名:名稱可能不一致,且專案可能正處於重新命名過程中。
  • 一個總括專案。 如果上下文是一個包含多個專案的空間(例如用來組織所有工作的 claude.ai 專案、具有專案資料庫的專案管理工具、包含多個資料夾的筆記庫),且使用者未指定單一專案,請勿默默選擇。請撰寫一個多專案摘要(步驟 4),並包含那些有最近活動的專案以及指示標記為短期優先的專案。
  • 使用者預設的狀態。 如果開啟訊息中斷言了一個狀態(例如未完成的 Git 操作、一個分支、一個 PR、一次部署),請在讀取來源後立即與之校驗:快速的 Git 快照、GitHub,或如果有階段日誌的話。如果不相符,請在摘要之前用一行說明,指出每個來源所說的內容。如果命名的內容屬於另一個專案(另一個資料夾、儲存庫或筆記),請在進一步讀取之前詢問要恢復哪一個;在沒有使用者的工作階段中,請繼續使用工作資料夾的專案,並在摘要頂部說明。
  • 無任何可恢復的項目。 沒有筆記、日誌、對話或提交:用一句話說明,然後直接跳到步驟 6,並處理使用者想做的任何事。

跨來源匹配同一個專案的方式

專案管理工具、筆記庫,以及(如果有的話)階段日誌,各自以不同的方式命名專案。請依以下順序比對鍵值,而非僅依名稱比對:

  1. 路徑。 如果設定有寫入階段日誌,則將其路徑與筆記庫筆記 (D) 的 frontmatter 中的 path: 欄位進行比對,如同 references/session-log.md 中「依路徑比對」所述。
  2. 專案管理工具連結。 指向該筆記的專案管理工具欄位(例如在 Notion 中,一個名為「Obsidian 筆記」的欄位),與該筆記的資料夾進行比對。
  3. 名稱。 不區分大小寫,並使用記憶體中的別名。

如果專案管理工具中的某個專案未連結其筆記,但筆記確實存在(透過路徑或名稱比對成功),請在「提醒」中用一行說明。

2. 來源,依讀取順序

首先讀取能告訴你每個筆記價值(實際發生的事與發生時間)的資料,然後是告訴你下一步該做什麼的資料,最後是為什麼要做這些。

B. 階段日誌(可選)。 如果設定有寫入,請遵循 references/session-log.md。

C. Git 與遠端。 僅在儲存庫中有終端機時使用。遵循 references/claude-code.md 中的「快速 Git 快照」與「Git 與遠端的實際狀態」類別。

C2. 無終端機的 GitHub。 用來確認本機來源無法得知的資訊:某個分支是否已被推送、是否有 Pull Request、以及是否已被合併。從專案的筆記庫筆記(url: 欄位或 github.com/... 行)、CLAUDE.md 或階段日誌中的 Merge pull request #N from <owner>/... 提交記錄中取得 owner/repository。

  • 首先,透過讀取檢查階段是否已有存取權:gh api "repos/<owner>/<repo>/pulls?state=all&sort=updated&direction=desc&per_page=10"。使用 REST API (gh api repos/...):gh pr list 可能因 GraphQL 並非總是可用而失敗。每個 PR 都有 created_at 和 merged_at:合併時間由 merged_at 決定,而非建立日期。
  • 如果可以回應,也請讀取分支(repos/<owner>/<repo>/branches)以及主分支的最新提交(repos/<owner>/<repo>/commits?per_page=5)。有了這些資訊,另一個來源所提到的未合併分支就可以標註為「有開啟的 PR #N」、「已合併」或「不在遠端上」。
  • 也讀取主分支的 CI(repos/<owner>/<repo>/actions/runs?branch=<main>&per_page=1)。如果最後一次執行失敗,將其放在「待辦」中;如果成功,則不提及;如果完全沒有執行(儲存庫沒有 CI),也不要提及。
  • 如果回應指出該儲存庫未啟用於此階段,請勿自行新增:授予儲存庫存取權不僅僅是讀取。在「提醒」中記錄下來,並在步驟 5 中將其作為一個選項提供(「在 GitHub 上確認」)。在沒有使用者的工作階段中,請跳過此步驟。

A. 專案管理工具。 如果指示指出狀態、優先級或下一步行動位於專案管理工具(Notion 或其他)中,請讀取它:這是了解下一步要做什麼的來源。從指示或 CLAUDE.md 中取得資料庫位址;如果你已經有了,就不要按名稱搜尋。

  • 在 Notion 中:取得資料庫結構描述,並查詢包含其連結 (url)、名稱、領域或分支、狀態、優先級、關鍵日期、下一步行動和筆記的行。
  • 已歸檔。 移除 Notion 已歸檔的行,並且如果資料庫也有自己的核取方塊或狀態來表示(例如「已歸檔」核取方塊或「已關閉」狀態),也移除那些已設為該狀態的行。
  • 編輯日期。 查詢不會返回最後編輯日期。打開你將要與其他來源校驗的行的頁面,對於總括專案,也打開指示標記為短期優先的專案的頁面,即使它們沒有日誌或筆記:這樣一來,沒有程式碼的專案也可以出現在「上次進度」中。
  • 大量編輯。 如果同一個資料庫中的多個頁面在相隔數秒內有編輯日期,這是一次性對所有頁面進行的更改(例如新增欄位、匯入、範本),而不是對這些專案的工作。請勿將該日期視為活動:除非另一個來源提供了日期,否則將這些專案保持為無日期狀態。
  • 任務。 如果指示命名了一個任務資料庫,請取得其結構描述,並查詢逾期或未來七天內到期的未完成任務。只有摘要中出現的專案相關任務才算數:暫停、關閉或不在摘要中的專案的任務,即使逾期也不算待辦事項。它們會在其專案項目下的「待辦」中顯示,並附上日期。對於沒有下一步行動的優先專案,也查詢其沒有日期篩選條件的開放任務(見下文)。
  • 沒有關聯專案的任務。 它們不屬於「待辦」。但如果某個任務匹配了一個「提醒」警告(例如,當某個專案未連結其筆記時,有任務要求連結筆記),請在該警告中提及該任務,而不是將其作為新發現呈現。
  • 一個沒有下一步行動的行不是待辦事項:請勿憑空捏造。如果該專案是優先專案,請在「待辦」中標記為「無下一步行動」。如果它有開放任務,無論是否有日期,請列出第一個(最接近截止日期的,或第一個無日期任務):「無下一步行動;開放任務:<任務>」。這是來自專案管理工具的資料,不是建議。優先指的是指示標記為短期優先的專案,加上其長期優先項目中的第一個;如果指示未設定優先級,則為專案管理工具中的最高優先級。當指示設定了其他優先級時,僅憑專案管理工具標記為「高」是不夠的。
  • 如果項目過多。 「待辦」最多包含五個項目。如果有更多專案需要納入,優先納入短期專案以及有下一步行動或未完成事項的專案;僅會新增「無下一步行動」的優先專案會被歸納為一個「提醒」行:「無下一步行動:X、Y 和 Z」。
  • 如果專案管理工具的狀態與另一個更新的來源明顯矛盾(例如,專案管理工具標記為「想法」,而筆記庫筆記中已有已完成的工作),請在「提醒」中說明,並附上兩者的日期。

D. Obsidian 筆記庫。 專案筆記,位於筆記庫的專案資料夾中(指示或 CLAUDE.md 通常會說明是哪個;例如在 PARA 風格的筆記庫中,位於 2 Projects/<project>/),以及其 updated: 欄位。它的 path: 欄位(如果有的話)是比對的鍵值(請參閱步驟 1)。讀取標題和最新的條目,而非整篇筆記。無需特定技能即可讀取。在 Claude Code 中,參考文件說明了何時啟動筆記庫技能,何時不啟動。

  • 儲存庫的 CLAUDE.md。 如果可以存取(透過終端機,或已連接的儲存庫資料夾),其狀態和待辦事項章節(「Current state」、「Pending」)是本地可用的最可靠待辦事項清單;僅讀取這些章節。使用終端機時

...

[原文截斷,此處為翻譯內容的結尾]

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

alex20-create/plan-admin

Work-planning routines for people who run several projects in parallel: a daily plan (today's blocks, each with its next action and a first step), a day close (where each block was left and the next actions for the next working day) and a weekly review (what went well, collisions, priorities). Reads the schedule, rules and project status from the user's project manager and project instructions, in claude.ai or in Claude Code. Use it whenever the user says 'what's on today', 'what should I do today', 'plan my day', 'where do I start today', 'I'm done for today', 'closing the day', 'weekly review', 'what have I got this week', or the equivalent in their language (in Spanish, for example, 'qué toca hoy', 'cierro el día' or 'revisión semanal'), even if the skill is not named. Do not use it to open a session on a project with history (that is a session-opening skill such as resume-project), to archive or close the chat, or to choose skills for a task.

alex20-create/wrap-up

Use when the user is about to archive the chat, close the session or finish for now ("voy a archivar", "cierro el chat", "wrap up", "/wrap-up"), in Claude Code or in claude.ai, even when they name none of the skills that save state, and also when the chat being closed is days old and later sessions have moved on. Not for the end of one task while the user keeps working, not for the daily close routine ("cierro el día", which belongs to the planning skill), and not for logging out of a website ("cerrar sesión" in that sense).

相關技能