This guide walks you through installing Shep AI CLI and creating your first feature.
npm install -g pnpm)Install Shep globally via pnpm:
pnpm add -g @shepai/cli
Or with npm:
npm install -g @shepai/cli
Verify installation:
shep --version
Navigate to your project directory and run Shep:
cd my-awesome-repository
shep
On first run, Shep launches a TUI wizard to configure your 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.
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.
If youβre already logged into your selected provider, Shep can use that session:
To use a new API token:
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.
After analysis completes, start the web UI:
shep ui
β Web server started
Open in your browser:
http://localhost:4050/
Press Ctrl+C to stop
Navigate to http://localhost:4050/ in your browser.
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.
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.
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.
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.
Large repositories may take longer. You can:
Add exclusions to .shep/config.json:
{
"analysis": {
"additionalExcludes": ["**/large-folder/**"]
}
}
Restart and let analysis complete:
shep restart
If authentication fails:
shep settings agent
If port 4050 is busy:
shep ui --port 4051
Update when:
Related docs: