shep

Getting Started

This guide walks you through installing Shep AI CLI and creating your first feature.

Prerequisites

Installation

Install Shep globally via pnpm:

pnpm add -g @shepai/cli

Or with npm:

npm install -g @shepai/cli

Verify installation:

shep --version

First Run

Navigate to your project directory and run Shep:

cd my-awesome-repository
shep

Initial Setup Wizard

On first run, Shep launches a TUI wizard to configure your agent provider.

Step 1: Select Agent Provider

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚      Shep AI CLI Setup                      β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚                                             β”‚
β”‚  Welcome to Shep!                           β”‚
β”‚  Select your AI agent provider:             β”‚
β”‚                                             β”‚
β”‚  ● Claude Code (Recommended)                β”‚
β”‚  β—‹ Cursor                                   β”‚
β”‚  β—‹ Gemini CLI                               β”‚
β”‚  β—‹ GitHub Copilot                           β”‚
β”‚  β—‹ Codeium                                  β”‚
β”‚  β—‹ Amazon Q Developer                       β”‚
β”‚  β—‹ Cody (Sourcegraph)                       β”‚
β”‚  β—‹ Tabnine                                  β”‚
β”‚                                             β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Note: Each provider has different capabilities and authentication methods. Claude Code is recommended for full autonomous SDLC support.

Step 2: Authentication

After selecting a provider, Shep prompts for authentication:

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚      Shep AI CLI Setup                      β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚                                             β”‚
β”‚  Configure Claude Code authentication       β”‚
β”‚                                             β”‚
β”‚  How would you like to authenticate?        β”‚
β”‚                                             β”‚
β”‚  β—‹ Use existing session                     β”‚
β”‚  β—‹ Set up new token                         β”‚
β”‚                                             β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Note: Authentication options vary by provider. Some support session reuse, others require API keys or OAuth.

Option 1: Use Existing Session

If you’re already logged into your selected provider, Shep can use that session:

  1. Select β€œUse existing session”
  2. Shep detects your existing authentication
  3. Setup complete

Option 2: Set Up New Token

To use a new API token:

  1. Select β€œSet up new token”
  2. Enter your API key for the selected provider
  3. Shep validates and stores the token securely

Repository Analysis

After authentication, Shep analyzes your repository:

Analyzing Repository... [β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘] (75%)

βœ“ Architecture analysis complete
βœ“ Dependency analysis complete
● Pattern detection in progress...
β—‹ Convention extraction pending

Note: Progress indicators: βœ“ = complete, ● = in progress, β—‹ = pending.

This analysis runs once per repository and is cached for future sessions.

Web UI Launch

After analysis completes, start the web UI:

shep ui
βœ“ Web server started

  Open in your browser:
  http://localhost:4050/

  Press Ctrl+C to stop

Creating Your First Feature

1. Open the Web UI

Navigate to http://localhost:4050/ in your browser.

2. Start a New Feature

The AI greets you with contextual options based on your repository:

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚          Welcome to my-app                   β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚                                              β”‚
β”‚  I've analyzed your React application with   β”‚
β”‚  Express backend. What would you like to     β”‚
β”‚  work on?                                    β”‚
β”‚                                              β”‚
β”‚  Suggested features based on your codebase:  β”‚
β”‚                                              β”‚
β”‚  β–‘ Add user authentication                   β”‚
β”‚  β–‘ Implement API rate limiting               β”‚
β”‚  β–‘ Add unit tests for API endpoints          β”‚
β”‚  β–‘ Other (describe your feature)             β”‚
β”‚                                              β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Note: User selects a suggested feature or describes a custom one.

3. Gather Requirements

Select an option or describe your feature. The AI guides you through requirements:

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚   Requirements Gathering Conversation                β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚                                                      β”‚
β”‚  πŸ‘€ User:                                            β”‚
β”‚     Add user authentication                          β”‚
β”‚                                                      β”‚
β”‚  πŸ€– Shep:                                            β”‚
β”‚     Great! Let's define the authentication           β”‚
β”‚     requirements. Which authentication method        β”‚
β”‚     would you like?                                  β”‚
β”‚                                                      β”‚
β”‚     β–‘ Email/password                                 β”‚
β”‚     β–‘ OAuth (Google, GitHub)                         β”‚
β”‚     β–‘ Magic links                                    β”‚
β”‚     β–‘ All of the above                               β”‚
β”‚                                                      β”‚
β”‚  πŸ‘€ User:                                            β”‚
β”‚     OAuth (Google, GitHub)                           β”‚
β”‚                                                      β”‚
β”‚  πŸ€– Shep:                                            β”‚
β”‚     Got it. For OAuth, I'll need to know:            β”‚
β”‚     Should users be able to link multiple OAuth      β”‚
β”‚     providers?                                       β”‚
β”‚                                                      β”‚
β”‚     β–‘ Yes, allow linking multiple accounts           β”‚
β”‚     β–‘ No, one provider per user                      β”‚
β”‚                                                      β”‚
β”‚  ...continued...                                     β”‚
β”‚                                                      β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Note: Conversational flow where Shep asks clarifying questions based on user selections.

4. Review the Plan

Once requirements are complete, Shep generates a plan:

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Feature: User Authentication | Lifecycle: Plan    β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚                                                   β”‚
β”‚ β”Œβ”€ TASKS (5) ─────────────────────────────────┐  β”‚
β”‚ β”‚                                              β”‚  β”‚
β”‚ β”‚  β–‘ Set up OAuth provider configuration       β”‚  β”‚
β”‚ β”‚  β–‘ Create user model and migrations          β”‚  β”‚
β”‚ β”‚  β–‘ Implement OAuth callback handlers         β”‚  β”‚
β”‚ β”‚  β–‘ Add authentication middleware             β”‚  β”‚
β”‚ β”‚  β–‘ Create login/logout UI components         β”‚  β”‚
β”‚ β”‚                                              β”‚  β”‚
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β”‚                                                   β”‚
β”‚ β”Œβ”€ DOCUMENTATION (3) ──────────────────────────┐  β”‚
β”‚ β”‚                                              β”‚  β”‚
β”‚ β”‚  πŸ“„ Product Requirements Document            β”‚  β”‚
β”‚ β”‚  πŸ“„ Technical RFC                            β”‚  β”‚
β”‚ β”‚  πŸ“„ Implementation Tech Plan                 β”‚  β”‚
β”‚ β”‚                                              β”‚  β”‚
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β”‚                                                   β”‚
β”‚ β”Œβ”€ Actions ────────────────────────────────────┐  β”‚
β”‚ β”‚  [Implement]    [Edit Plan]                  β”‚  β”‚
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β”‚                                                   β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Note: User can click [Implement] to start autonomous code generation or [Edit Plan] to modify tasks.

5. Start Implementation

Click β€œImplement” to begin autonomous code generation:

Implementing: User Authentication | Progress: 2/5 tasks complete

βœ“ Set up OAuth provider configuration
βœ“ Create user model and migrations
● Implement OAuth callback handlers
  └─ Creating src/routes/auth.ts
β—‹ Add authentication middleware
β—‹ Create login/logout UI components

Note: βœ“ = completed tasks, ● = in progress (with current file being modified), β—‹ = pending tasks.

Next Steps

Troubleshooting

Analysis Takes Too Long

Large repositories may take longer. You can:

  1. Add exclusions to .shep/config.json:

    {
      "analysis": {
        "additionalExcludes": ["**/large-folder/**"]
      }
    }
    
  2. Restart and let analysis complete:

    shep restart
    

Authentication Failed

If authentication fails:

  1. Check your API key is valid for your selected provider
  2. Ensure you have access to your chosen agent provider
  3. Reconfigure the agent:
    shep settings agent
    

Port Already in Use

If port 4050 is busy:

shep ui --port 4051

Maintaining This Document

Update when:

Related docs: