Credentials. Your model API key goes into .env.local or the browser settings, so keep it out of commits, logs, and screenshots.
Who it is forA developer or privacy-minded user who wants to run the coach on their own machine with their own model credentials.
The problemThe hosted site may not fit your needs, and you want the app running locally with a model provider you control.
The outcomeThe app runs at localhost:3000 and completes a practice dialogue using your configured model.
What you need first
- A web browser for the hosted site at socialcoach.aurax.live
- For a local run: Node.js 22+, pnpm 11, and Anthropic or OpenAI compatible model credentials
- For self-hosting: a server with Docker, a domain name pointed at it, and ports 80 and 443 open
Steps
- Run
git clone https://github.com/GeminiLight/SocialCoach.gitand thencd SocialCoach/app. - Run
pnpm install, thencp .env.example .env.local. - Edit .env.local: set LLM_PROVIDER to anthropic or openai, add LLM_API_KEY, leave LLM_BASE_URL empty for the default endpoint, and set LLM_FAST_MODEL and LLM_SMART_MODEL to model IDs from your provider.
- Run
pnpm dev, then open http://localhost:3000. - In Settings, under Model, you can also configure your own Anthropic or OpenAI compatible service; credentials stay in your browser.
Prompt for your agent
Clone https://github.com/GeminiLight/SocialCoach, go to the app folder, install dependencies with pnpm, and configure .env.local for <provider> using <model ID>. Start the dev server and confirm that localhost:3000 loads and that one practice dialogue runs. Report any missing environment variables and never print the API key.
Caveat. Conversation context is sent to the model provider you configure, so use your own credentials and check that provider's terms before entering personal situations.
Every Monday: the 5 hottest repos and exactly how to use them. Free, one email a week, unsubscribe anytime.
Get them freeShare: X LinkedIn Hacker News Email Copy link
Third-party repos we don't own. AI-written use cases can be wrong. Disclaimer