From Replit to Local: How One Developer Used Claude to Build StillHere, an API-Powered AI Companion Chat App

One developer shared on r/ClaudeAI how they built StillHere.ink, a chat app tailored for AI companion conversations, using Claude as their coding agent. The project started on Replit but hit limitations, and the developer eventually moved to a local workflow with Claude Cowork, which they described as being “Claude’s manager.”
Key Details from the Build
- Origin: Started with a Replit vibe-coding template for a simple API chat app with memory. As features grew, Replit Agent struggled with tasks like adding new models.
- Workflow shift: Downloaded Replit files locally, edited them with Claude, then copied updated files back to Replit. This unblocked further development.
- User’s role: The developer handles testing, design, features, community, App Store setup, debugging, screenshots, and “crying when Replit Agent breaks something.”
- App purpose: StillHere is designed for long-running AI companion conversations, using the user’s own API keys for OpenAI, OpenRouter, etc.
- Features: Memory, diary-style conversation summaries, rolling summaries, RAG/context tools, model switching, image generation, text-to-speech, custom companion settings, imports/exports, and projects.
- Cost management: Tools to keep API costs down: rolling summaries, RAG, context controls, model choice. The developer reported spending ~$20 on OpenAI and ~$20 on OpenRouter over two months. Their favorite model, Qwen3 235B Instruct, cost only $1.43 total.
- Privacy: Data is encrypted at rest. Not end-to-end encrypted because the app needs to process conversations for memory, summaries, and API calls. Messages are sent to the user’s chosen API providers.
- Availability: Free to use, optional donations. Web app at stillhere.ink, works in browser or installable to phone home screen. Google Play version in development.
Who This Is For
Developers interested in building or using a self-hosted-style AI chat app with companion features, or those hitting limits with Replit’s vibe coding and looking for a local Claude-driven workflow.
📖 Read the full source: r/ClaudeAI
👀 See Also

MCP Server Adds Persistent Memory with Retrieval Scoring to Claude Code
A developer built an MCP server called engram-mcp that gives Claude Code persistent memory across sessions and projects, featuring automatic retrieval scoring based on outcome success and drift detection for stale knowledge.

Comparison of RunLobster vs Hosted OpenClaw Solutions
A developer tested RunLobster against KiwiClaw, xCloud, and self-hosted OpenClaw for 2 weeks each. RunLobster differs fundamentally as a product rather than just hosting, with 3,000 one-click integrations and memory that builds over time.

Voxray-AI: Production Go Backend for Real-Time Voice Agent Pipelines
Voxray-AI is a Go backend that chains Whisper → any LLM → TTS into a real-time voice agent pipeline with WebSocket and WebRTC support. It's built for production-grade servers and high-concurrency voice workloads with configurable providers for STT, LLM, and TTS layers.

Watchtower: A Local Proxy for Monitoring Claude Code API Traffic
Watchtower is a free, open-source tool that acts as a local HTTP proxy and real-time web dashboard to intercept and display all API traffic between Claude Code (or Codex CLI) and their APIs. It shows requests, SSE streams, tool definitions, system prompts, token usage, and rate limits.