Duplication of dependencies
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 48/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- typescript
- Ambito
- tooling
Direzione di ricerca
Nell’issue non sono indicati file sorgente né test. Inizia tracciando il caricamento della configurazione all’avvio e il codice che crea la directory .opencode, quindi verifica come vengono risolti JFROG_DEBUG_LOGS e i percorsi delle directory di base XDG. Il lavoro è completato quando il logging disabilitato non crea la directory, i log abilitati usano la posizione XDG richiesta e le esecuzioni ripetute non creano dipendenze duplicate.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Whether JFROG_DEBUG_LOGS is enabled or not upon 1st run it creates empty .opencode directory from within path where opencode was run. Despite existence of ~/.config/opencode. On 2nd run opencode detects there is .opencode directory present and populates it with duplicate node_modules which results in slower startups, and higher disk usage.
If DEBUG_LOGS is enabled it at least has some meaning that it puts event-log.txt into it however that isn't necessary. You should respect xdg base dir spec and put logs according to variable to opencodes path (for example ~/.local/share/opencode/log/jfrog-event.log).
I append logs but it isn't certain from them (at least to me) why is .opencode being created when no LOGS=false
1st run
timestamp=2026-09-02T11:56:18.837Z level=INFO run=e19a753c message="loading tui config" path=/home/daru/.config/opencode/tui.json
timestamp=2026-09-02T11:56:18.846Z level=INFO run=e19a753c message="applying tui config" path=/home/daru/.config/opencode/tui.json order=1
timestamp=2026-09-02T11:56:18.847Z level=INFO run=e19a753c message="loading tui config" path=/home/daru/.config/opencode/tui.json
timestamp=2026-09-02T11:56:18.850Z level=INFO run=e19a753c message="applying tui config" path=/home/daru/.config/opencode/tui.json order=2
timestamp=2026-09-02T11:56:20.396Z level=INFO run=0bff64d9 message="creating instance" directory=/home/daru/.config/opencode
timestamp=2026-09-02T11:56:20.398Z level=INFO run=0bff64d9 message=fromDirectory directory=/home/daru/.config/opencode
timestamp=2026-09-02T11:56:20.576Z level=INFO run=0bff64d9 message=bootstrapping directory=/home/daru/.config/opencode
timestamp=2026-09-02T11:56:20.587Z level=INFO run=0bff64d9 message=loading path=/home/daru/.config/opencode/config.json
timestamp=2026-09-02T11:56:20.588Z level=INFO run=0bff64d9 message=loading path=/home/daru/.config/opencode/opencode.json
timestamp=2026-09-02T11:56:20.588Z level=INFO run=0bff64d9 message=loading path=/home/daru/.config/opencode/opencode.jsonc
timestamp=2026-09-02T11:56:20.618Z level=INFO run=0bff64d9 message=loading path=/home/daru/.config/opencode/opencode.jsonc
timestamp=2026-09-02T11:56:20.812Z level=INFO run=0bff64d9 message="Model discovery plugin initialized" category=plugin
timestamp=2026-09-02T11:56:20.823Z level=DEBUG run=0bff64d9 message="Using config hook timeout" category=config timeoutMs=5000
timestamp=2026-09-02T11:56:21.089Z level=DEBUG run=0bff64d9 message="Timed out loading resolved providers" category=discovery
timestamp=2026-09-02T11:56:21.237Z level=WARN run=0bff64d9 message="Provider model discovery failed" category=discovery provider=hento baseURL=https://ai.hento.org endpoint=/v1/models
timestamp=2026-09-02T11:56:21.237Z level=INFO run=0bff64d9 message="Provider model discovery completed" category=discovery providerCount=1 modelCount=25
timestamp=2026-09-02T11:56:21.240Z level=INFO run=0bff64d9 message="enabled LSP servers" serverIds="astro, bash, biome, csharp, clangd, clojure-lsp, dart, deno, dockerfile, eslint, elixir-ls, fsharp, gleam, gopls, haskell-language-server, jdtls, julials, kotlin-ls, lua-ls, nixd, ocaml-lsp, oxlint, php intelephense, prisma, pyright, razor, ruby-lsp, rust, sourcekit-lsp, svelte, terraform, texlab, tinymist, typescript, vue, yaml-ls, zls"
timestamp=2026-09-02T11:56:21.242Z level=INFO run=0bff64d9 message=init
timestamp=2026-09-02T11:56:21.941Z level=INFO run=0bff64d9 message="watcher backend" directory=/home/daru/.config/opencode platform=linux backend=inotify
timestamp=2026-09-02T11:56:21.954Z level=INFO run=0bff64d9 message="project copy refresh started" projectID=f05bfbe824f971b17ef9a078fd746faec4ec945f
timestamp=2026-09-02T11:56:22.455Z level=INFO run=0bff64d9 message="project copy refresh done" projectID=f05bfbe824f971b17ef9a078fd746faec4ec945f updated=[] removed=[]
timestamp=2026-09-02T11:56:22.479Z level=INFO run=0bff64d9 message="booting location services" directory=/home/daru/.config/opencode workspaceID=undefined
timestamp=2026-09-02T11:56:23.876Z level=INFO run=0bff64d9 message="watcher backend" directory=/home/daru/.config/opencode platform=linux backend=inotify
timestamp=2026-09-02T11:56:23.886Z level=INFO run=0bff64d9 message="project copy refresh started" projectID=f05bfbe824f971b17ef9a078fd746faec4ec945f
timestamp=2026-09-02T11:56:24.735Z level=INFO run=0bff64d9 message="project copy refresh done" projectID=f05bfbe824f971b17ef9a078fd746faec4ec945f updated=[] removed=[]
timestamp=2026-09-02T11:56:24.748Z level=INFO run=0bff64d9 message="booting location services" directory=/home/daru/.config/opencode workspaceID=undefined
timestamp=2026-09-02T11:56:26.815Z level=WARN run=0bff64d9 message="duplicate skill name" name=cloudflare-email-service existing=/home/daru/.claude/skills/cloudflare-email-service/SKILL.md duplicate=/home/daru/.agents/skills/cloudflare-email-service/SKILL.md
timestamp=2026-09-02T11:56:26.816Z level=WARN run=0bff64d9 message="duplicate skill name" name=agents-sdk existing=/home/daru/.claude/skills/agents-sdk/SKILL.md duplicate=/home/daru/.agents/skills/agents-sdk/SKILL.md
timestamp=2026-09-02T11:56:26.816Z level=WARN run=0bff64d9 message="duplicate skill name" name=web-perf existing=/home/daru/.claude/skills/web-perf/SKILL.md duplicate=/home/daru/.agents/skills/web-perf/SKILL.md
timestamp=2026-09-02T11:56:26.816Z level=WARN run=0bff64d9 message="duplicate skill name" name=turnstile-spin existing=/home/daru/.claude/skills/turnstile-spin/SKILL.md duplicate=/home/daru/.agents/skills/turnstile-spin/SKILL.md
timestamp=2026-09-02T11:56:26.816Z level=WARN run=0bff64d9 message="duplicate skill name" name=sandbox-next existing=/home/daru/.claude/skills/sandbox-next/SKILL.md duplicate=/home/daru/.agents/skills/sandbox-next/SKILL.md
timestamp=2026-09-02T11:56:26.816Z level=WARN run=0bff64d9 message="duplicate skill name" name=wrangler existing=/home/daru/.claude/skills/wrangler/SKILL.md duplicate=/home/daru/.agents/skills/wrangler/SKILL.md
timestamp=2026-09-02T11:56:26.817Z level=WARN run=0bff64d9 message="duplicate skill name" name=cloudflare-one-migrations existing=/home/daru/.claude/skills/cloudflare-one-migrations/SKILL.md duplicate=/home/daru/.agents/skills/cloudflare-one-migrations/SKILL.md
timestamp=2026-09-02T11:56:26.817Z level=WARN run=0bff64d9 message="duplicate skill name" name=sandbox-migrate-to-next existing=/home/daru/.claude/skills/sandbox-migrate-to-next/SKILL.md duplicate=/home/daru/.agents/skills/sandbox-migrate-to-next/SKILL.md
timestamp=2026-09-02T11:56:26.817Z level=WARN run=0bff64d9 message="duplicate skill name" name=sandbox-stable existing=/home/daru/.claude/skills/sandbox-stable/SKILL.md duplicate=/home/daru/.agents/skills/sandbox-stable/SKILL.md
timestamp=2026-09-02T11:56:26.817Z level=WARN run=0bff64d9 message="duplicate skill name" name=durable-objects existing=/home/daru/.claude/skills/durable-objects/SKILL.md duplicate=/home/daru/.agents/skills/durable-objects/SKILL.md
timestamp=2026-09-02T11:56:26.817Z level=WARN run=0bff64d9 message="duplicate skill name" name=cloudflare-one existing=/home/daru/.claude/skills/cloudflare-one/SKILL.md duplicate=/home/daru/.agents/skills/cloudflare-one/SKILL.md
timestamp=2026-09-02T11:56:26.817Z level=WARN run=0bff64d9 message="duplicate skill name" name=workers-best-practices existing=/home/daru/.claude/skills/workers-best-practices/SKILL.md duplicate=/home/daru/.agents/skills/workers-best-practices/SKILL.md
timestamp=2026-09-02T11:56:26.817Z level=WARN run=0bff64d9 message="duplicate skill name" name=cloudflare existing=/home/daru/.claude/skills/cloudflare/SKILL.md duplicate=/home/daru/.agents/skills/cloudflare/SKILL.md
timestamp=2026-09-02T11:56:26.819Z level=INFO run=0bff64d9 message=init count=27
2nd run
timestamp=2026-09-02T11:57:47.868Z level=INFO run=b6840543 message="loading tui config" path=/home/daru/.config/opencode/tui.json
timestamp=2026-09-02T11:57:47.874Z level=INFO run=b6840543 message="applying tui config" path=/home/daru/.config/opencode/tui.json order=1
timestamp=2026-09-02T11:57:47.875Z level=INFO run=b6840543 message="loading tui config" path=/home/daru/.config/opencode/tui.json
timestamp=2026-09-02T11:57:47.877Z level=INFO run=b6840543 message="applying tui config" path=/home/daru/.config/opencode/tui.json order=2
timestamp=2026-09-02T11:57:49.010Z level=INFO run=89886042 message="creating instance" directory=/home/daru/.config/opencode
timestamp=2026-09-02T11:57:49.011Z level=INFO run=89886042 message=fromDirectory directory=/home/daru/.config/opencode
timestamp=2026-09-02T11:57:49.123Z level=INFO run=89886042 message=bootstrapping directory=/home/daru/.config/opencode
timestamp=2026-09-02T11:57:49.131Z level=INFO run=89886042 message=loading path=/home/daru/.config/opencode/config.json
timestamp=2026-09-02T11:57:49.131Z level=INFO run=89886042 message=loading path=/home/daru/.config/opencode/opencode.json
timestamp=2026-09-02T11:57:49.132Z level=INFO run=89886042 message=loading path=/home/daru/.config/opencode/opencode.jsonc
timestamp=2026-09-02T11:57:49.148Z level=INFO run=89886042 message=loading path=/home/daru/.config/opencode/opencode.jsonc
timestamp=2026-09-02T11:57:49.171Z level=DEBUG run=89886042 message="loading config from /home/daru/.config/opencode/.opencode/opencode.json"
timestamp=2026-09-02T11:57:49.172Z level=INFO run=89886042 message=loading path=/home/daru/.config/opencode/.opencode/opencode.json
timestamp=2026-09-02T11:57:49.172Z level=DEBUG run=89886042 message="loading config from /home/daru/.config/opencode/.opencode/opencode.jsonc"
timestamp=2026-09-02T11:57:49.172Z level=INFO run=89886042 message=loading path=/home/daru/.config/opencode/.opencode/opencode.jsonc
timestamp=2026-09-02T11:57:56.124Z level=INFO run=89886042 message="Model discovery plugin initialized" category=plugin
timestamp=2026-09-02T11:57:56.131Z level=DEBUG run=89886042 message="Using config hook timeout" category=config timeoutMs=5000
timestamp=2026-09-02T11:57:56.421Z level=DEBUG run=89886042 message="Timed out loading resolved providers" category=discovery
timestamp=2026-09-02T11:57:56.566Z level=WARN run=89886042 message="Provider model discovery failed" category=discovery provider=hento baseURL=https://ai.hento.org endpoint=/v1/models
timestamp=2026-09-02T11:57:56.566Z level=INFO run=89886042 message="Provider model discovery completed" category=discovery providerCount=1 modelCount=25
timestamp=2026-09-02T11:57:56.569Z level=INFO run=89886042 message="enabled LSP servers" serverIds="astro, bash, biome, csharp, clangd, clojure-lsp, dart, deno, dockerfile, eslint, elixir-ls, fsharp, gleam, gopls, haskell-language-server, jdtls, julials, kotlin-ls, lua-ls, nixd, ocaml-lsp, oxlint, php intelephense, prisma, pyright, razor, ruby-lsp, rust, sourcekit-lsp, svelte, terraform, texlab, tinymist, typescript, vue, yaml-ls, zls"
timestamp=2026-09-02T11:57:56.571Z level=INFO run=89886042 message=init
timestamp=2026-09-02T11:57:57.195Z level=INFO run=89886042 message="watcher backend" directory=/home/daru/.config/opencode platform=linux backend=inotify
timestamp=2026-09-02T11:57:57.204Z level=INFO run=89886042 message="project copy refresh started" projectID=f05bfbe824f971b17ef9a078fd746faec4ec945f
timestamp=2026-09-02T11:57:57.656Z level=INFO run=89886042 message="project copy refresh done" projectID=f05bfbe824f971b17ef9a078fd746faec4ec945f updated=[] removed=[]
timestamp=2026-09-02T11:57:57.667Z level=INFO run=89886042 message="booting location services" directory=/home/daru/.config/opencode workspaceID=undefined
timestamp=2026-09-02T11:57:58.680Z level=INFO run=89886042 message="watcher backend" directory=/home/daru/.config/opencode platform=linux backend=inotify
timestamp=2026-09-02T11:57:58.688Z level=INFO run=89886042 message="project copy refresh started" projectID=f05bfbe824f971b17ef9a078fd746faec4ec945f
timestamp=2026-09-02T11:57:59.317Z level=INFO run=89886042 message="project copy refresh done" projectID=f05bfbe824f971b17ef9a078fd746faec4ec945f updated=[] removed=[]
timestamp=2026-09-02T11:57:59.323Z level=INFO run=89886042 message="booting location services" directory=/home/daru/.config/opencode workspaceID=undefined
timestamp=2026-09-02T11:58:01.747Z level=WARN run=89886042 message="duplicate skill name" name=cloudflare-email-service existing=/home/daru/.claude/skills/cloudflare-email-service/SKILL.md duplicate=/home/daru/.agents/skills/cloudflare-email-service/SKILL.md
timestamp=2026-09-02T11:58:01.748Z level=WARN run=89886042 message="duplicate skill name" name=web-perf existing=/home/daru/.claude/skills/web-perf/SKILL.md duplicate=/home/daru/.agents/skills/web-perf/SKILL.md
timestamp=2026-09-02T11:58:01.749Z level=WARN run=89886042 message="duplicate skill name" name=durable-objects existing=/home/daru/.claude/skills/durable-objects/SKILL.md duplicate=/home/daru/.agents/skills/durable-objects/SKILL.md
timestamp=2026-09-02T11:58:01.750Z level=WARN run=89886042 message="duplicate skill name" name=sandbox-next existing=/home/daru/.claude/skills/sandbox-next/SKILL.md duplicate=/home/daru/.agents/skills/sandbox-next/SKILL.md
timestamp=2026-09-02T11:58:01.751Z level=WARN run=89886042 message="duplicate skill name" name=agents-sdk existing=/home/daru/.claude/skills/agents-sdk/SKILL.md duplicate=/home/daru/.agents/skills/agents-sdk/SKILL.md
timestamp=2026-09-02T11:58:01.752Z level=WARN run=89886042 message="duplicate skill name" name=cloudflare-one existing=/home/daru/.claude/skills/cloudflare-one/SKILL.md duplicate=/home/daru/.agents/skills/cloudflare-one/SKILL.md
timestamp=2026-09-02T11:58:01.752Z level=WARN run=89886042 message="duplicate skill name" name=sandbox-stable existing=/home/daru/.claude/skills/sandbox-stable/SKILL.md duplicate=/home/daru/.agents/skills/sandbox-stable/SKILL.md
timestamp=2026-09-02T11:58:01.752Z level=WARN run=89886042 message="duplicate skill name" name=cloudflare-one-migrations existing=/home/daru/.claude/skills/cloudflare-one-migrations/SKILL.md duplicate=/home/daru/.agents/skills/cloudflare-one-migrations/SKILL.md
timestamp=2026-09-02T11:58:01.753Z level=WARN run=89886042 message="duplicate skill name" name=turnstile-spin existing=/home/daru/.claude/skills/turnstile-spin/SKILL.md duplicate=/home/daru/.agents/skills/turnstile-spin/SKILL.md
timestamp=2026-09-02T11:58:01.753Z level=WARN run=89886042 message="duplicate skill name" name=wrangler existing=/home/daru/.claude/skills/wrangler/SKILL.md duplicate=/home/daru/.agents/skills/wrangler/SKILL.md
timestamp=2026-09-02T11:58:01.753Z level=WARN run=89886042 message="duplicate skill name" name=cloudflare existing=/home/daru/.claude/skills/cloudflare/SKILL.md duplicate=/home/daru/.agents/skills/cloudflare/SKILL.md
timestamp=2026-09-02T11:58:01.753Z level=WARN run=89886042 message="duplicate skill name" name=workers-best-practices existing=/home/daru/.claude/skills/workers-best-practices/SKILL.md duplicate=/home/daru/.agents/skills/workers-best-practices/SKILL.md
timestamp=2026-09-02T11:58:01.754Z level=WARN run=89886042 message="duplicate skill name" name=sandbox-migrate-to-next existing=/home/daru/.claude/skills/sandbox-migrate-to-next/SKILL.md duplicate=/home/daru/.agents/skills/sandbox-migrate-to-next/SKILL.md
timestamp=2026-09-02T11:58:01.757Z level=INFO run=89886042 message=init count=27
event-log when LOGS=true, there was no event-log when false
JfrogOpencodePlugin starting...
jf CLI on PATH: false
config.skills.paths=["/home/daru/.cache/opencode/packages/@jfrog/opencode-jfrog-plugin@0.3.0/node_modules/@jfrog/opencode-jfrog-plugin/skills"]
mcp: jfrog remote MCP not registered (need JFROG_PLATFORM_URL; or JFROG_MCP_DISABLE=true)
- Lingua principale
- TypeScript
- Stelle
- 1
- Fork
- 1
- Merge medio
- 5g 13h
- PR unite (30g)
- 3
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Issue simili
-
bug(cli): hapi doctor inline-media prints a fabricated B:\ helper-script path in packaged installs Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
-
Crush Aperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
catppuccin/catppuccin#3125 ·
-
Add a SECURITY.md Aperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100
ElementsProject/cln-application#167 · 1 commento · 1 reazione ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
Quantco/pnpm-licenses#17 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100