forked from code-yeongyu/senpi
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdevcontainer.json
More file actions
88 lines (88 loc) · 2.55 KB
/
Copy pathdevcontainer.json
File metadata and controls
88 lines (88 loc) · 2.55 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
{
"name": "senpi-dev",
"image": "mcr.microsoft.com/devcontainers/javascript-node:24-bookworm",
"features": {
"ghcr.io/devcontainers/features/github-cli:1": {}
},
"onCreateCommand": "bash -lc 'sudo apt-get update -y && sudo apt-get install -y tmux ripgrep jq || true'",
"postCreateCommand": "node scripts/devenv-setup.mjs && npm ls @modelcontextprotocol/sdk --workspace @code-yeongyu/senpi && printf '\\nOptional native Rust setup: node scripts/devenv-setup.mjs --with-native\\n'",
"forwardPorts": [5173],
"portsAttributes": {
"5173": { "label": "web-ui dev server", "onAutoForward": "notify" }
},
"remoteEnv": {
"NODE_ENV": "development",
"PI_TELEMETRY": "0"
},
"secrets": {
"ANTHROPIC_API_KEY": {
"description": "Anthropic Claude API key. Seeds .env.local and powers real agent turns. Mock-loop QA needs no key (it uses a local fake model)."
},
"OPENAI_API_KEY": {
"description": "(Optional) OpenAI API key."
},
"OPENROUTER_API_KEY": {
"description": "(Optional) OpenRouter API key."
},
"GEMINI_API_KEY": {
"description": "(Optional) Google Gemini API key (senpi's default provider is google)."
},
"ALIBABA_CODING_PLAN_API_KEY": {
"description": "(Optional) Alibaba Coding Plan API key."
},
"DEEPINFRA_API_KEY": {
"description": "(Optional) DeepInfra API key."
},
"FIREPASS_API_KEY": {
"description": "(Optional) Fire Pass API key."
},
"FUGU_API_KEY": {
"description": "(Optional) Sakana Fugu API key."
},
"LITELLM_API_KEY": {
"description": "(Optional) LiteLLM proxy API key."
},
"LM_STUDIO_API_KEY": {
"description": "(Optional) LM Studio API key."
},
"NANO_GPT_API_KEY": {
"description": "(Optional) NanoGPT API key."
},
"OLLAMA_API_KEY": {
"description": "(Optional) Ollama API key."
},
"OLLAMA_CLOUD_API_KEY": {
"description": "(Optional) Ollama Cloud API key."
},
"QIANFAN_API_KEY": {
"description": "(Optional) Qianfan API key."
},
"QWEN_OAUTH_TOKEN": {
"description": "(Optional) Qwen Portal OAuth token."
},
"QWEN_PORTAL_API_KEY": {
"description": "(Optional) Qwen Portal API key."
},
"SYNTHETIC_API_KEY": {
"description": "(Optional) Synthetic API key."
},
"VENICE_API_KEY": {
"description": "(Optional) Venice API key."
},
"VLLM_API_KEY": {
"description": "(Optional) vLLM API key."
},
"ZENMUX_API_KEY": {
"description": "(Optional) ZenMux API key."
}
},
"customizations": {
"vscode": {
"extensions": ["biomejs.biome"],
"settings": {
"editor.defaultFormatter": "biomejs.biome",
"editor.formatOnSave": true
}
}
}
}