SnowCrew AI is an open-source, visual no-code studio for building, running, and exporting multi-agent CrewAI workflows. Design agents, tasks, and crews on a drag-and-drop canvas, wire them to Snowflake Cortex LLMs and data plus integrations like GitHub, then export ready-to-run crew.py / YAML. Run it locally for development, or deploy it to Snowflake Container Services (SPCS) for production.
- Creates local workspaces for CrewAI planning and export
- Models agents, tasks, crews, and Snowflake connections
- Supports Snowflake API-style config
- Exports starter
agents.yaml,tasks.yaml,crew.py,.env.example - Stores app data locally in
~/.crewai-studio-local/(overridable viaDATA_DIRfor container/SPCS deployments)
For local development and trying it out:
git clone https://github.com/Blake-Daniel-Inv/SnowCrew-AI.git
cd SnowCrew-AI
npm install
npm run devThen open http://localhost:3000.
To verify a production build locally:
npm run build
npm startIn production, SnowCrew AI runs as a Snowpark Container Services (SPCS) service inside your Snowflake account. The high-level flow:
- Provision the Cortex role, database, image repository, stage, compute pool, and secrets. Run
snowflake/setup-cortex-role.sqlandsnowflake/setup.sql— seedocs/OPERATIONS.md§1 for the full walkthrough, including theSNOWFLAKE_PATandCREDENTIALS_MASTER_KEYsecrets (snowflake/PAT-SETUP.md). - Authenticate to your account's image registry:
docker login <org>-<account>.registry.snowflakecomputing.com -u <snowflake_user>
- Build, push, and deploy the service:
./snowflake/deploy.sh <image_repository_url>
- Wait until the service is ready, then health-check it:
SELECT SYSTEM$GET_SERVICE_STATUS('CREWAI_STUDIO_SVC'); -- wait for READY
curl -sf "https://<your-ingress-host>/api/health/ready"
The service spec is snowflake/spec.yaml, and app data is persisted to DATA_DIR (a mounted stage) rather than ~/.crewai-studio-local/. The complete runbook — secrets, GitHub OAuth setup, backups, secret rotation, and debugging — lives in docs/OPERATIONS.md.
SnowCrewAI agents can call out to third-party APIs on a per-user basis. The first integration is GitHub (read-only access to private repos, pull requests, and issues).
To enable it:
- Register a GitHub OAuth App at https://github.com/settings/developers. Set the callback URL to
https://<your-host>/api/auth/github/callback(orhttp://localhost:3000/api/auth/github/callbackfor local dev). - Set the following environment variables before starting the server:
GITHUB_OAUTH_CLIENT_ID— the App's Client IDGITHUB_OAUTH_CLIENT_SECRET— the App's Client SecretCREDENTIALS_MASTER_KEY— a 32-byte key (base64 or hex) used to envelope-encrypt stored tokens
- Restart
npm run dev(or your production server). - Open
/settingsand click Connect GitHub. After authorizing, your agents that declare thegithubtool will pick up your token automatically the next time their crew runs. - After connecting, your GitHub organizations are listed so you can see which org repos your agents have access to.
Released under the MIT License.
Built on top of CrewAI, the open-source multi-agent framework (MIT licensed). CrewAI is installed separately in your Python environment and is not redistributed as part of this project.