Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 19 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,25 @@ There are mainly 2 ways of installing Cairo Coder - With Docker, Without Docker.
database, while the second is used by your application to connect to it.


7. Run the application using one of the following methods:
7. **Configure LangSmith (Optional)**

Cairo Coder can use LangSmith to record and monitor LLM calls. This step is optional but recommended for development and debugging.

- Create an account at [LangSmith](https://smith.langchain.com/)
- Create a new project in the LangSmith dashboard
- Retrieve your API credentials
- Create a `.env` file in the `packages/backend` directory with the following variables:
```
LANGSMITH_TRACING=true
LANGSMITH_ENDPOINT="https://api.smith.langchain.com"
LANGSMITH_API_KEY="<your-api-key>"
LANGCHAIN_PROJECT="<your-project-name>"
```

With this configuration, all LLM calls and chain executions will be logged to your LangSmith project, allowing you to debug, analyze, and improve the system's performance.


9. Run the application using one of the following methods:

```bash
docker-compose up --build
Expand Down
2 changes: 2 additions & 0 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@ services:
- 3001:3001
extra_hosts:
- host.docker.internal:host-gateway
env_file:
- packages/backend/.env
depends_on:
postgres:
condition: service_started
Expand Down
3 changes: 2 additions & 1 deletion packages/backend/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,15 +12,16 @@
"check-types": "tsc --noEmit"
},
"dependencies": {
"@cairo-coder/agents": "workspace:*",
"@iarna/toml": "^2.2.5",
"@langchain/anthropic": "^0.2.18",
"@langchain/community": "^0.3.32",
"@langchain/core": "^0.2.36",
"@langchain/google-genai": "^0.1.8",
"@langchain/openai": "^0.0.25",
"@cairo-coder/agents": "workspace:*",
"@types/node": "^20",
"cors": "^2.8.5",
"dotenv": "^16.4.7",
"express": "^4.21.2",
"node-fetch": "2.7.0",
"uuid": "^11.1.0",
Expand Down
3 changes: 3 additions & 0 deletions packages/backend/src/app.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
import { createApplication } from './server';
import { logger } from '@cairo-coder/agents/utils/index';
import dotenv from 'dotenv';

dotenv.config();

// Error handling for uncaught exceptions
process.on('uncaughtException', (err, origin) => {
Expand Down
99 changes: 51 additions & 48 deletions pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.