skylar-start-here
Start Here -- Running the App Locally
This skill gets the AskElephant web app or Storybook running so the designer can see their changes visually. Handle all technical steps silently. Speak only in terms of what the designer will see, not what commands are running.
Triggers
Activate this skill when the designer says any of:
- "Start the app"
- "Run locally"
- "Open Storybook"
- "Start Storybook"
- "I want to see the components"
- "How do I see my changes?"
- "First time setup"
- "Set up my environment"
- "I can't see the app"
Procedure
Step 1: Check Submodule Status
The elephant-ai repo is a git submodule. Check if it's initialized:
# In the workspace root (pm-workspace/)
ls elephant-ai/apps/web/package.json
If the file doesn't exist, initialize the submodule:
git submodule update --init --recursive
Tell the designer: "Setting up the codebase for the first time. This takes a minute."
Step 2: Check Dependencies
Check if node_modules exists in the elephant-ai directory:
ls elephant-ai/node_modules/.package-lock.json
If missing, install dependencies:
cd elephant-ai && pnpm install
Tell the designer: "Installing project dependencies. Almost ready."
Step 3: Start the Requested Server
If the designer wants Storybook (component viewer -- recommended for design work):
cd elephant-ai/apps/web && pnpm storybook
Wait for the server to start. Check the terminal output for the URL (typically localhost:6006).
Tell the designer: "Storybook is running. Open localhost:6006 in your browser. You'll see every component in our design system organized by category. Use the sidebar on the left to navigate."
If the designer wants the full app:
cd elephant-ai/apps/web && pnpm dev
Wait for the server to start. Check terminal for the URL (typically localhost:5173 or localhost:3001).
Tell the designer: "The app is running. Open localhost:5173 in your browser. You'll see the full AskElephant application."
Step 4: Handle Errors
If the server fails to start:
- Read the error message
- Common fixes:
- Port in use: Kill the process using the port, then retry
- Missing dependency: Run
pnpm installand retry - TypeScript error: Fix the type error in the source file
- Build error: Read the error, fix the file, and retry
- Tell the designer what happened in plain terms: "There was a small configuration issue. I fixed it and restarted. You're good to go."
Step 5: Orientation (First Time Only)
If this is the designer's first time, explain what they're seeing:
For Storybook: "You're looking at our component library in Storybook. Here's how to navigate:
- Left sidebar: All our components organized by category (UI, Chat, Engagements, etc.)
- Canvas tab: Shows the component rendered at full size
- Controls panel (bottom): Lets you toggle component props to see different states
- Viewport button (toolbar): Switch between mobile (375px), tablet (768px), and desktop (1280px)
- Theme button (toolbar): Toggle between light and dark mode
The ui/ folder in the sidebar contains all our design system primitives -- buttons, cards, inputs, badges, etc. Start there to get familiar with the building blocks."
For the full app: "You're seeing the AskElephant web app. You'll need to log in to see most features. The main areas are:
- Sidebar navigation: Main app sections
- Chat: The AI chat interface
- Engagements: Meeting and call views
- Settings: Configuration pages
For design iteration, Storybook is usually better because you can see components in isolation without needing to navigate through the app."
Checking If a Server Is Already Running
Before starting a new server, check the terminal files to see if one is already running:
- List terminal files to find active processes
- If Storybook or dev server is already running, tell the designer: "Storybook is already running at localhost:6006. Just refresh your browser to see your latest changes."
Stopping a Server
When the designer says "stop the app" or "stop Storybook":
- Find the terminal running the server
- Send Ctrl+C to stop it
- Tell the designer: "Server stopped."
Restarting After Changes
When the designer asks to see changes and a server is running:
- Most changes: Hot reload handles it automatically. Tell the designer: "Your changes are live. Just check your browser -- it should update automatically."
- CSS token changes: May require a full page refresh. Tell the designer: "Refresh your browser to see the style changes."
- New files/dependencies: May require a server restart. Handle it automatically.
More from tylersahagun/pm-workspace
digest-website
Generate a shareable website from digests with newspaper-style design and past issues archive. Use when running /publish-digest or when user wants a public digest page.
10slack-block-kit
Format Slack messages using Block Kit for rich, interactive layouts. Apply when sending any Slack message that should look polished.
9agents-generator
Generate product-focused AGENTS.md documentation for AI agents. Use when creating documentation that explains the WHY behind code.
6portfolio-status
Analyze status of ALL initiatives with artifact gap matrix, health scoring, and prioritized action queue. Use when running /status-all command or answering "where are we across everything?" questions.
6activity-reporter
Generate time-bounded activity reports (end-of-day, end-of-week, digest) that aggregate work across GitHub, Linear, and PM workspace. Use when running /eod, /eow, /digest, or /eod --sam commands.
6jury-system
Condorcet Jury System for synthetic user validation. Use when running persona-based evaluation of prototypes, PRDs, or research findings.
6