@inventeer.tech/apex 0.2.31
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +53 -0
- package/install.js +76 -0
- package/package.json +40 -0
package/README.md
ADDED
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# @inventeer.tech/apex
|
|
2
|
+
|
|
3
|
+
**AI-powered software delivery agent. From task to merged PR across multiple repos.**
|
|
4
|
+
|
|
5
|
+
This is the npm wrapper for the [APEX CLI](https://github.com/Inventeer/apex). It downloads the correct pre-built binary for your platform on install.
|
|
6
|
+
|
|
7
|
+
## Install
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
npm install -g @inventeer.tech/apex
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
Supports macOS (x64/arm64), Linux (x64/arm64), and Windows (x64).
|
|
14
|
+
|
|
15
|
+
## Usage
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
# Authenticate (once per machine)
|
|
19
|
+
apex login
|
|
20
|
+
|
|
21
|
+
# Register your repo
|
|
22
|
+
cd ~/repos/backend && apex init
|
|
23
|
+
|
|
24
|
+
# Index for RAG
|
|
25
|
+
apex index
|
|
26
|
+
|
|
27
|
+
# Launch
|
|
28
|
+
apex
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## What is APEX?
|
|
32
|
+
|
|
33
|
+
APEX takes a developer from a task description to open pull requests across multiple repositories — with full context awareness, episodic memory, and zero configuration files left in your repos.
|
|
34
|
+
|
|
35
|
+
```
|
|
36
|
+
apex /eng.start TASK-456
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
The AI fetches the ticket, investigates all workspace repos, proposes a cross-repo plan, and executes it step by step. When you close the terminal, the session is summarized. Next time, APEX resumes in under 500 tokens of overhead.
|
|
40
|
+
|
|
41
|
+
**What runs locally**: the `apex` binary, a native in-process AI runtime engine, and your repos.
|
|
42
|
+
**What lives in the cloud**: codebase RAG, episodic session memory, org config, LLM proxy with context injection.
|
|
43
|
+
|
|
44
|
+
## Links
|
|
45
|
+
|
|
46
|
+
- [Homepage](https://github.com/Inventeer/apex)
|
|
47
|
+
- [Documentation](https://github.com/Inventeer/apex/tree/main/docs)
|
|
48
|
+
- [Releases](https://github.com/Inventeer/apex-releases/releases)
|
|
49
|
+
- [Issues](https://github.com/Inventeer/apex/issues)
|
|
50
|
+
|
|
51
|
+
## License
|
|
52
|
+
|
|
53
|
+
MIT
|
package/install.js
ADDED
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
const { execSync } = require("child_process");
|
|
2
|
+
const fs = require("fs");
|
|
3
|
+
const path = require("path");
|
|
4
|
+
const os = require("os");
|
|
5
|
+
|
|
6
|
+
const REPO = "Inventeer/apex-releases";
|
|
7
|
+
const BIN_DIR = path.join(__dirname, "bin");
|
|
8
|
+
const PKG = require("./package.json");
|
|
9
|
+
|
|
10
|
+
function getPlatform() {
|
|
11
|
+
const p = process.platform;
|
|
12
|
+
if (p === "linux") return "linux";
|
|
13
|
+
if (p === "darwin") return "darwin";
|
|
14
|
+
if (p === "win32") return "windows";
|
|
15
|
+
throw new Error("Unsupported platform: " + p);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
function getArch() {
|
|
19
|
+
const a = process.arch;
|
|
20
|
+
if (a === "x64") return "amd64";
|
|
21
|
+
if (a === "arm64") return "arm64";
|
|
22
|
+
throw new Error("Unsupported arch: " + a);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
async function main() {
|
|
26
|
+
const platform = getPlatform();
|
|
27
|
+
const arch = getArch();
|
|
28
|
+
const version = PKG.version;
|
|
29
|
+
const ext = platform === "windows" ? ".zip" : ".tar.gz";
|
|
30
|
+
const binaryName = platform === "windows" ? "apex.exe" : "apex";
|
|
31
|
+
const assetName = "apex_" + version + "_" + platform + "_" + arch + ext;
|
|
32
|
+
const url =
|
|
33
|
+
"https://github.com/" +
|
|
34
|
+
REPO +
|
|
35
|
+
"/releases/download/v" +
|
|
36
|
+
version +
|
|
37
|
+
"/" +
|
|
38
|
+
assetName;
|
|
39
|
+
|
|
40
|
+
if (!fs.existsSync(BIN_DIR)) fs.mkdirSync(BIN_DIR, { recursive: true });
|
|
41
|
+
|
|
42
|
+
console.log(
|
|
43
|
+
"Downloading apex v" + version + " (" + platform + "/" + arch + ")...",
|
|
44
|
+
);
|
|
45
|
+
|
|
46
|
+
const tmp = path.join(os.tmpdir(), assetName);
|
|
47
|
+
execSync('curl -fsSL "' + url + '" -o "' + tmp + '"', { stdio: "inherit" });
|
|
48
|
+
|
|
49
|
+
if (ext === ".tar.gz") {
|
|
50
|
+
execSync('tar -xzf "' + tmp + '" -C "' + BIN_DIR + '" apex');
|
|
51
|
+
} else {
|
|
52
|
+
const extractDir = path.join(os.tmpdir(), "apex-extract-" + Date.now());
|
|
53
|
+
fs.mkdirSync(extractDir, { recursive: true });
|
|
54
|
+
execSync(
|
|
55
|
+
'powershell -Command "Expand-Archive -Force \'' +
|
|
56
|
+
tmp +
|
|
57
|
+
"' '" +
|
|
58
|
+
extractDir +
|
|
59
|
+
"'\"",
|
|
60
|
+
);
|
|
61
|
+
fs.copyFileSync(
|
|
62
|
+
path.join(extractDir, binaryName),
|
|
63
|
+
path.join(BIN_DIR, binaryName),
|
|
64
|
+
);
|
|
65
|
+
fs.rmSync(extractDir, { recursive: true, force: true });
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
fs.chmodSync(path.join(BIN_DIR, binaryName), 0o755);
|
|
69
|
+
fs.rmSync(tmp, { force: true });
|
|
70
|
+
console.log("apex installed successfully.");
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
main().catch((e) => {
|
|
74
|
+
console.error("Installation failed:", e.message);
|
|
75
|
+
process.exit(1);
|
|
76
|
+
});
|
package/package.json
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@inventeer.tech/apex",
|
|
3
|
+
"version": "0.2.31",
|
|
4
|
+
"description": "AI-powered software delivery agent",
|
|
5
|
+
"bin": {
|
|
6
|
+
"apex": "./bin/apex"
|
|
7
|
+
},
|
|
8
|
+
"scripts": {
|
|
9
|
+
"postinstall": "node install.js"
|
|
10
|
+
},
|
|
11
|
+
"os": [
|
|
12
|
+
"linux",
|
|
13
|
+
"darwin",
|
|
14
|
+
"win32"
|
|
15
|
+
],
|
|
16
|
+
"cpu": [
|
|
17
|
+
"x64",
|
|
18
|
+
"arm64"
|
|
19
|
+
],
|
|
20
|
+
"engines": {
|
|
21
|
+
"node": ">=14"
|
|
22
|
+
},
|
|
23
|
+
"keywords": [
|
|
24
|
+
"ai",
|
|
25
|
+
"cli",
|
|
26
|
+
"developer-tools",
|
|
27
|
+
"code-agent",
|
|
28
|
+
"pull-request",
|
|
29
|
+
"apex"
|
|
30
|
+
],
|
|
31
|
+
"homepage": "https://github.com/Inventeer/apex",
|
|
32
|
+
"bugs": {
|
|
33
|
+
"url": "https://github.com/Inventeer/apex/issues"
|
|
34
|
+
},
|
|
35
|
+
"license": "MIT",
|
|
36
|
+
"repository": {
|
|
37
|
+
"type": "git",
|
|
38
|
+
"url": "https://github.com/Inventeer/apex.git"
|
|
39
|
+
}
|
|
40
|
+
}
|