✨ NO KEYBOARDS ALLOWED HACKATHON✨ : build next-gen interfaces with goose and win prizes. Deadline Nov 14.
Skip to main content

Managing Projects

Goose Projects automatically track your working directories and associated sessions, making it easy to resume work across multiple codebases with full context preservation.

A project in Goose is a record of a working directory where you've used Goose. Every time you run Goose, it automatically tracks the current directory as a project, storing:

  • Path: The absolute path to the project directory
  • Last accessed: When you last worked on this project
  • Last instruction: The most recent command you gave to Goose
  • Session ID: The associated session for context continuity

Projects are stored in ~/.local/share/goose/projects.json.

CLI Only Feature

Projects are currently available only through the Goose CLI. Desktop support is planned for future releases.

Basic Usage

Resume your most recent project:

goose project  

Browse all your projects:

goose projects  
tip

When resuming a project, you can continue the previous session or start fresh in that directory.

For complete command syntax and options, see the CLI Commands Guide.

Workflow Example

Let's follow Sarah, a developer working on multiple projects throughout her day:

Morning: API Development

cd ~/projects/ecommerce-api
goose session --name "api-auth-work"

Sarah asks Goose to help implement JWT token refresh logic

Mid-Morning: Mobile App Bug Fix

cd ~/projects/mobile-app
goose session

Sarah gets help debugging an iOS crash in the login screen

Afternoon: Admin Dashboard

cd ~/projects/admin-dashboard  
goose session --name "dashboard-ui"

Sarah works on creating user management interface components

Next Day: Quick Resume

# From any directory, quickly resume the most recent project
goose project

Goose shows:

┌ Goose Project Manager

◆ Choose an option:
│ ○ Resume project with session: .../admin-dashboard
│ Continue with the previous session
│ ○ Resume project with fresh session: .../admin-dashboard
│ Change to the project directory but start a new session
│ ○ Start new project in current directory: /Users/sarah
│ Stay in the current directory and start a new session

Later: Browse All Projects

goose projects

Goose displays:

┌ Goose Project Manager

◆ Select a project:
│ ○ 1 .../admin-dashboard (2025-01-07 09:15:30) [create user management interface]
│ ○ 2 .../mobile-app (2025-01-06 11:45:20) [login screen crashing on iOS]
│ ○ 3 .../ecommerce-api (2025-01-06 09:30:15) [JWT token refresh logic]
│ ○ Cancel

Sarah can see her recent projects with timestamps and context, making it easy to choose where to continue working.

Benefits

Time Savings

Projects eliminate the typical 2-5 minutes lost when switching between codebases, especially valuable for developers working on multiple projects daily.

  • Eliminate context switching friction - Jump between projects instantly without manual navigation
  • Preserve work context - Resume exactly where you left off with full conversation history
  • Seamless session integration - Maintain continuity across different codebases