# dev-corp Pi Settings Guide Pi를 dev-corp `gemma4:26b`로 사용하기 위한 최소 설치/설정 기준이다. ## 설치 Pi `0.80.3`은 Node.js `22.19.0` 이상이 필요하다. ```bash node --version npm --version npm install -g @earendil-works/pi-coding-agent@0.80.3 pi --version ``` `pi --version`이 `0.80.3`이면 정상이다. ## 설정 파일 설정 위치: ```text ~/.pi/agent/settings.json ~/.pi/agent/models.json ``` 디렉터리가 없으면 만든다. ```bash mkdir -p ~/.pi/agent ``` ## settings.json ```json { "defaultProvider": "dev-corp", "defaultModel": "gemma4:26b", "defaultThinkingLevel": "high", "hideThinkingBlock": false, "httpIdleTimeoutMs": 300000, "retry": { "provider": { "timeoutMs": 300000, "maxRetries": 0, "maxRetryDelayMs": 60000 } }, "enabledModels": [ "dev-corp/*" ] } ``` 기존 `theme`, `lastChangelogVersion` 같은 개인 설정은 유지해도 된다. ## models.json `apiKey`에는 실제 토큰을 넣는다. 토큰은 문서, 로그, 공유 화면에 남기지 않는다. ```json { "providers": { "dev-corp": { "baseUrl": "http://digitalplatform-iop.cloud:18086/v1", "api": "openai-completions", "apiKey": "", "authHeader": true, "compat": { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "supportsUsageInStreaming": false, "maxTokensField": "max_tokens", "requiresToolResultName": true, "requiresAssistantAfterToolResult": true, "supportsStrictMode": false }, "models": [ { "id": "gemma4:26b", "name": "dev-corp gemma4:26b", "reasoning": true, "input": ["text"], "contextWindow": 262144, "maxTokens": 32768, "cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 } } ] } } } ``` ## 주의 - `supportsReasoningEffort`는 `false`로 둔다. - `think=false`, `reasoning_effort=none`, `thinking_token_budget`을 강제로 추가하지 않는다. - Pi는 `openai-completions` 기준으로 streaming 호출을 기본 사용한다. non-stream이 필요한 경우는 Pi가 아니라 일반 OpenAI-compatible 호출에서 `stream:false`로 선택한다. - reasoning 표시 여부는 Pi UI나 client 표시 정책에서 선택적으로 처리한다. ## 확인 ```bash pi --version jq '{defaultProvider, defaultModel, defaultThinkingLevel, hideThinkingBlock}' ~/.pi/agent/settings.json jq '.providers["dev-corp"] | { baseUrl, api, hasApiKey: has("apiKey"), authHeader, compat, models }' ~/.pi/agent/models.json ``` ## Codex/Claude 작업 프롬프트 ```text 현재 호스트의 Pi를 dev-corp gemma4:26b 기준으로 설치/설정해줘. 수정 가능: - Pi 설치 - ~/.pi/agent/settings.json - ~/.pi/agent/models.json 수정 금지: - 이 저장소 코드와 설정 - 서버/모델 실행 설정 - 토큰 원문 출력 설치: - Node.js >=22.19.0 확인 - npm install -g @earendil-works/pi-coding-agent@0.80.3 - pi --version이 0.80.3인지 확인 settings.json: - defaultProvider: dev-corp - defaultModel: gemma4:26b - defaultThinkingLevel: high - hideThinkingBlock: false - httpIdleTimeoutMs: 300000 - retry.provider.timeoutMs: 300000 - retry.provider.maxRetries: 0 - retry.provider.maxRetryDelayMs: 60000 - enabledModels: ["dev-corp/*"] models.json: - providers.dev-corp.baseUrl: http://digitalplatform-iop.cloud:18086/v1 - providers.dev-corp.api: openai-completions - providers.dev-corp.apiKey: 기존 값이 있으면 보존하고, 없으면 사용자에게 토큰을 요청 - providers.dev-corp.authHeader: true - compat.supportsStore: false - compat.supportsDeveloperRole: false - compat.supportsReasoningEffort: false - compat.supportsUsageInStreaming: false - compat.maxTokensField: max_tokens - compat.requiresToolResultName: true - compat.requiresAssistantAfterToolResult: true - compat.supportsStrictMode: false - model id: gemma4:26b - model name: dev-corp gemma4:26b - reasoning: true - input: ["text"] - contextWindow: 262144 - maxTokens: 32768 think=false, reasoning_effort=none, thinking_token_budget 설정은 추가하지 마. 검증 출력에는 apiKey 원문을 포함하지 말고 hasApiKey boolean만 보여줘. ```