mirror of
https://github.com/simstudioai/sim.git
synced 2026-01-10 15:38:00 -05:00
c2f786e40b32d3fe06af47319254387e8de6fb71
* fix(sharing): fixed folders not appearing when sharing workflows (#616)
* fix(sharing): fixed folders not appearing when sharing workflows
* cleanup
* fixed error case
* fix(deletions): folder deletions were hanging + use cascade deletions throughout (#620)
* use cascade deletion
* fix lint
---------
Co-authored-by: Vikhyath Mondreti <vikhyathmondreti@vikhyaths-air.lan>
* fix(envvars): t3-env standardization (#606)
* chore: use t3-env as source of truth
* chore: update mock env for failing tests
* feat(enhanced logs): integration + log visualizer canvas (#618)
* feat(logs): enhanced logging system with cleanup and theme fixes
- Implement enhanced logging cleanup with S3 archival and retention policies
- Fix error propagation in trace spans for manual executions
- Add theme-aware styling for frozen canvas modal
- Integrate enhanced logging system across all execution pathways
- Add comprehensive trace span processing and iteration navigation
- Fix boolean parameter types in enhanced logs API
* add warning for old logs
* fix lint
* added cost for streaming outputs
* fix overflow issue
* fix lint
* fix selection on closing sidebar
* tooltips z index increase
---------
Co-authored-by: Vikhyath Mondreti <vikhyathmondreti@vikhyaths-air.lan>
Co-authored-by: Waleed Latif <walif6@gmail.com>
* fix(frozen canvas): don't error if workflow state not available for migrated logs (#624)
* fix(frozen canvas): don't error if workflow state not available for old logs
* fix lint
---------
Co-authored-by: Vikhyath Mondreti <vikhyathmondreti@vikhyaths-air.lan>
* fix(reddit): update to oauth endpoints (#627)
* fix(reddit): change tool to use oauth token
* fix lint
* add contact info
* Update apps/sim/tools/reddit/get_comments.ts
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
* Update apps/sim/tools/reddit/hot_posts.ts
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
* Update apps/sim/tools/reddit/get_posts.ts
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
* fix type error
---------
Co-authored-by: Vikhyath Mondreti <vikhyathmondreti@Vikhyaths-MacBook-Air.local>
Co-authored-by: Vikhyath Mondreti <vikhyathmondreti@Vikhyaths-Air.attlocal.net>
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
* feat(tools): added reordering of tool calls in agent tool input (#629)
* added tool re-ordering in agent block
* styling
* fix(oauth): fix oauth to use correct subblock value setter + remove unused local storage code (#628)
* fix(oauth): fixed oauth state not persisting in credential selector
* remove unused local storage code for oauth
* fix lint
* selector clearance issue fix
* fix typing issue
* fix lint
* remove cred id from logs
* fix lint
* works
---------
Co-authored-by: Vikhyath Mondreti <vikhyathmondreti@Vikhyaths-Air.attlocal.net>
* fix(mem-deletion): hard deletion of memory (#622)
* fix: memory deletion
* fix: bun run lint
---------
Co-authored-by: Adam Gough <adamgough@Adams-MacBook-Pro.local>
* feat(build): added turbopack builds to prod (#630)
* added turbopack to prod builds
* block access to sourcemaps
* revert changes to docs
* fix(docs): fixed broken docs links (#632)
* fix(resp format): non-json input was crashing (#631)
* fix response format non-json input crash bug
* fix lint
---------
Co-authored-by: Vikhyath Mondreti <vikhyathmondreti@Vikhyaths-Air.attlocal.net>
* fix(revert-deployed): correctly revert to deployed state as unit op using separate endpoint (#633)
* fix(revert-deployed): revert deployed functionality with separate endpoint
* fix lint
---------
Co-authored-by: Vikhyath Mondreti <vikhyathmondreti@Vikhyaths-Air.attlocal.net>
* fix(dropdown): simplify & fix tag dropdown for parallel & loop blocks (#634)
* fix(dropdown): simplify & fix tag dropdown for parallel & loop blocks
* fixed build
* fix(response-format): add response format to tag dropdown, chat panel, and chat client (#637)
* add response format structure to tag dropdown
* handle response format outputs for chat client and chat panel, implemented the response format handling for streamed responses
* cleanup
* fix(sockets-server-disconnection): on reconnect force sync store to db (#638)
* keep warning until refresh
* works
* fix sockets server sync on reconnection
* infinite reconn attempts
* fix lint
---------
Co-authored-by: Vikhyath Mondreti <vikhyathmondreti@Vikhyaths-Air.attlocal.net>
* fix(build): fixed build
* Revert "fix(sockets-server-disconnection): on reconnect force sync store to d…" (#640)
This reverts commit 6dc8b17bed.
* fix(sockets): force user to refresh on disconnect in order to mkae changes, add read-only offline mode (#641)
* force user to refresh on disconnect in order to mkae changes, add read-only offline mode
* remove unused hook
* style
* update tooltip msg
* remove unnecessary useMemo around log
* fix(sockets): added debouncing for sub-block values to prevent overloading socket server, fixed persistence issue during streaming back from LLM response format, removed unused events (#642)
* fix(sockets): added debouncing for sub-block values to prevent overloading socket server, fixed persistence issue during streaming back from LLM response format, removed unused events
* reuse existing isStreaming state for code block llm-generated response format
---------
Co-authored-by: Vikhyath Mondreti <vikhyathvikku@gmail.com>
Co-authored-by: Vikhyath Mondreti <vikhyathmondreti@vikhyaths-air.lan>
Co-authored-by: Aditya Tripathi <aditya@climactic.co>
Co-authored-by: Vikhyath Mondreti <vikhyathmondreti@Vikhyaths-MacBook-Air.local>
Co-authored-by: Vikhyath Mondreti <vikhyathmondreti@Vikhyaths-Air.attlocal.net>
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
Co-authored-by: Adam Gough <77861281+aadamgough@users.noreply.github.com>
Co-authored-by: Adam Gough <adamgough@Adams-MacBook-Pro.local>
imrpovement(kb): added client-side store, shared utils, background processing, retry with exponential backoff to knowledge base (#453)
Sim Studio is a lightweight, user-friendly platform for building AI agent workflows.
Getting Started
- Use our cloud-hosted version
- Self-host using one of the methods below
Self-Hosting Options
Option 1: NPM Package (Simplest)
The easiest way to run Sim Studio locally is using our NPM package:
npx simstudio
After running these commands, open http://localhost:3000/ in your browser.
Options
-p, --port <port>: Specify the port to run Sim Studio on (default: 3000)--no-pull: Skip pulling the latest Docker images
Requirements
- Docker must be installed and running on your machine
Option 2: Docker Compose
# Clone the repository
git clone https://github.com/simstudioai/sim.git
# Navigate to the project directory
cd sim
# Start Sim Studio
docker compose -f docker-compose.prod.yml up -d
Access the application at http://localhost:3000/
Using Local Models
To use local models with Sim Studio:
- Pull models using our helper script:
./apps/sim/scripts/ollama_docker.sh pull <model_name>
- Start Sim Studio with local model support:
# With NVIDIA GPU support
docker compose --profile local-gpu -f docker-compose.ollama.yml up -d
# Without GPU (CPU only)
docker compose --profile local-cpu -f docker-compose.ollama.yml up -d
# If hosting on a server, update the environment variables in the docker-compose.prod.yml file to include the server's public IP then start again (OLLAMA_URL to i.e. http://1.1.1.1:11434)
docker compose -f docker-compose.prod.yml up -d
Option 3: Dev Containers
- Open VS Code with the Remote - Containers extension
- Open the project and click "Reopen in Container" when prompted
- Run
bun run dev:fullin the terminal or use thesim-startalias
Option 4: Manual Setup
- Clone and install dependencies:
git clone https://github.com/simstudioai/sim.git
cd sim
bun install
- Set up environment:
cd apps/sim
cp .env.example .env # Configure with required variables (DATABASE_URL, BETTER_AUTH_SECRET, BETTER_AUTH_URL)
- Set up the database:
bunx drizzle-kit push
- Start the development servers:
Next.js app:
bun run dev
Start the realtime server:
bun run dev:sockets
Run both together (recommended):
bun run dev:full
Tech Stack
- Framework: Next.js (App Router)
- Runtime: Bun
- Database: PostgreSQL with Drizzle ORM
- Authentication: Better Auth
- UI: Shadcn, Tailwind CSS
- State Management: Zustand
- Flow Editor: ReactFlow
- Docs: Fumadocs
- Monorepo: Turborepo
- Realtime: Socket.io
Contributing
We welcome contributions! Please see our Contributing Guide for details.
License
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
Made with ❤️ by the Sim Studio Team
Description
Languages
TypeScript
69.8%
MDX
29.7%
Python
0.2%
CSS
0.1%

