UNPKG

abyss-ai

Version:

Autonomous AI coding agent - enhanced OpenCode with autonomous capabilities

38 lines (30 loc) 942 B
import fs from "fs/promises" import { xdgData, xdgCache, xdgConfig, xdgState } from "xdg-basedir" import path from "path" const app = "opencode" const data = path.join(xdgData!, app) const cache = path.join(xdgCache!, app) const config = path.join(xdgConfig!, app) const state = path.join(xdgState!, app) export namespace Global { export const Path = { data, bin: path.join(data, "bin"), cache, config, state, } as const } await Promise.all([ fs.mkdir(Global.Path.data, { recursive: true }), fs.mkdir(Global.Path.config, { recursive: true }), fs.mkdir(Global.Path.state, { recursive: true }), ]) const CACHE_VERSION = "3" const version = await Bun.file(path.join(Global.Path.cache, "version")) .text() .catch(() => "0") if (version !== CACHE_VERSION) { await fs.rm(Global.Path.cache, { recursive: true, force: true }) await Bun.file(path.join(Global.Path.cache, "version")).write(CACHE_VERSION) }