Documentation Index
Fetch the complete documentation index at: https://mintlify.com/block/goose/llms.txt
Use this file to discover all available pages before exploring further.
The project and projects commands help you manage and navigate between project directories with their associated Goose sessions.
Usage
goose project # Open last project
goose p # Short alias
goose projects # List all projects
goose ps # Short alias
Project Command
Open the last accessed project directory.
Behavior:
If no previous projects exist:
- Starts a new session in the current directory
If projects exist:
- Shows the most recently accessed project
- Offers options:
- Resume project with session
- Resume project with fresh session
- Start new project in current directory
Example:
Interactive menu:
┌ goose Project Manager
│
◆ Choose an option:
│ ● Resume project with session: .../my-app
│ ○ Resume project with fresh session: .../my-app
│ ○ Start new project in current directory: /home/user/code
└
Resume with Session
Continues the previous session in the project directory:
# Changes to project directory
cd /path/to/my-app
# Resumes session with ID
goose session --name <session-id> --resume
Resume with Fresh Session
Starts a new session in the project directory:
# Changes to project directory
cd /path/to/my-app
# Starts fresh session
goose session
Start New Project
Stays in current directory and starts new session:
# Stays in current directory
goose session
Projects Command
List all recent projects and select one interactively.
Example:
Interactive menu:
┌ goose Project Manager
│
◆ Select a project:
│ ● .../my-app (2025-03-04 10:30:00) [Analyze code structure]
│ ○ .../website (2025-03-03 15:22:10) [Update homepage]
│ ○ .../api-server (2025-03-02 09:15:33) [Add authentication]
│ ○ Cancel
└
Information shown:
- Project path (truncated for readability)
- Last accessed timestamp
- Last instruction/task (truncated to 40 characters)
Selection Options
After selecting a project:
If previous session exists:
◆ What would you like to do?
│ ● Resume previous session
│ ○ Start new session
└
Resume previous session:
cd /path/to/project
goose session --name <session-id> --resume
Start new session:
cd /path/to/project
goose session
Project Tracking
Goose automatically tracks:
Project Information:
- Working directory path
- Last accessed timestamp
- Last session ID
- Last instruction/prompt
Storage:
Projects are tracked in ~/.config/goose/projects.json:
{
"projects": [
{
"path": "/home/user/my-app",
"last_accessed": "2025-03-04T10:30:00Z",
"last_session_id": "my-app-session",
"last_instruction": "Analyze code structure"
}
]
}
Directory Validation
Before opening a project, Goose validates:
- Directory still exists
- Directory is accessible
- Session files are valid (if resuming)
If directory doesn’t exist:
Most recent project directory '/path/to/old-project' no longer exists.
Project Display
Paths are truncated for readability:
Full path:
/home/user/projects/web/frontend/my-app
Displayed as:
Shows last 2 components with ... prefix.
Examples
Quick resume:
# Resume most recent project
goose project
# Select: Resume project with session
Browse all projects:
# Show project list
goose projects
# Select project from list
# Choose: Resume previous session
Start fresh in project:
goose project
# Select: Resume project with fresh session
New project in current dir:
cd ~/new-project
goose project
# Select: Start new project in current directory
Integration with Sessions
Projects are linked to sessions:
Session creates/updates project:
cd ~/my-app
goose session --name my-app
# Project entry created/updated
Project tracking includes:
- Which session was last used
- When it was accessed
- What was the last task
View project sessions:
goose session list --working_dir ~/my-app
Workflow Examples
Daily workflow:
# Morning: Resume yesterday's work
goose project # or: goose p
# Select: Resume project with session
# Continue working...
# Switch to different project
goose projects # or: goose ps
# Select different project
Multi-project development:
# Backend development
cd ~/backend
goose session --name backend-api
# Frontend development
cd ~/frontend
goose session --name frontend-ui
# Later: Quick switch
goose projects
# Shows both projects with recent activity
Project exploration:
# Start in new directory
cd ~/exploration
goose session
# Try something else
goose project
# Select: Resume project with session
# Returns to previous project
Project Sorting
Projects are sorted by last accessed time:
- Most recent first (default)
- Timestamp shown in list
- Helps find active projects quickly
Path Resolution
Project paths are:
- Absolute paths stored internally
- Displayed with ~ for home directory
- Truncated for readability in lists
- Validated before opening
Storage:
Display:
See Also