openAgent

gitlab

The open source UNIVERSAL agent.

0 stars0 forksupdated 2d agodefault branch: dev
clonehttps://gitlab.com/bitzzdev/openAgent.git
AIagentautomationopen-sourceuniversal-agent
@ dev
import { describe, expect, test } from "bun:test"
import { spawnSync } from "child_process"
import path from "path"
const repoRoot = path.resolve(__dirname, "../../..")
const cliPath = path.resolve(__dirname, "../src/index.ts")
function runCli(args: string[], env: Record<string, string> = {}) {
const result = spawnSync(
"bun",
["run", "--conditions=browser", cliPath, ...args],
{
cwd: repoRoot,
env: {
...process.env,
OPENAGENT_CONFIG_DIR: "/tmp/openagent-cli-test-config",
...env,
},
encoding: "utf8",
},
)
return {
stdout: result.stdout || "",
stderr: result.stderr || "",
status: result.status,
}
}
describe("OpenAgent Rebranded CLI", () => {
test("openagent --help displays OpenAgent logo and commands", () => {
const res = runCli(["--help"])
expect(res.status).toBe(0)
expect(res.stdout + res.stderr).toContain("openagent")
expect(res.stdout + res.stderr).toContain("tools")
expect(res.stdout + res.stderr).toContain("credentials")
}, 15000)
test("openagent --version returns version", () => {
const res = runCli(["--version"])
expect(res.status).toBe(0)
expect(res.stdout + res.stderr).toMatch(/\d+\.\d+\.\d+|local/)
}, 15000)
test("openagent tools list displays built-in and dynamic tools", () => {
const res = runCli(["tools", "list"])
expect(res.status).toBe(0)
const combined = res.stdout + res.stderr
expect(combined).toContain("OpenAgent Tool Registry")
expect(combined).toContain("read")
expect(combined).toContain("write")
expect(combined).toContain("tool_generate")
}, 15000)
test("openagent credentials set stores key securely", () => {
const setRes = runCli(["credentials", "set", "TEST_CLI_SECRET", "cli_secret_value_123"])
expect(setRes.status).toBe(0)
expect(setRes.stdout + setRes.stderr).toContain("securely stored")
}, 15000)
test("openagent credentials list masks secret values", () => {
const listRes = runCli(["credentials", "list"])
expect(listRes.status).toBe(0)
expect(listRes.stdout + listRes.stderr).toContain("TEST_CLI_SECRET")
expect(listRes.stdout + listRes.stderr).not.toContain("cli_secret_value_123")
}, 15000)
test("openagent credentials remove deletes key", () => {
const removeRes = runCli(["credentials", "remove", "TEST_CLI_SECRET"])
expect(removeRes.status).toBe(0)
expect(removeRes.stdout + removeRes.stderr).toContain("removed from store")
}, 15000)
})