@actcore/act-build 0.3.10 → 0.5.0

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.
Files changed (2) hide show
  1. package/README.md +108 -0
  2. package/package.json +8 -8
package/README.md ADDED
@@ -0,0 +1,108 @@
1
+ # ACT CLI & Build Tools
2
+
3
+ Host and build [ACT](https://actcore.dev) (Agent Component Tools) WebAssembly components.
4
+
5
+ This repo contains two tools:
6
+
7
+ - **`act`** — run, call, inspect, and serve ACT components from local files, HTTP URLs, or OCI registries
8
+ - **`act-build`** — post-process compiled WASM components: embed metadata, skills, and custom sections
9
+
10
+ ## Install
11
+
12
+ ```bash
13
+ # act (CLI host)
14
+ npm i -g @actcore/act
15
+ pip install act-cli
16
+ cargo install act-cli
17
+
18
+ # act-build (build tool)
19
+ npm i -g @actcore/act-build
20
+ pip install act-build
21
+ cargo install act-build
22
+ ```
23
+
24
+ Pre-built binaries available on [GitHub Releases](https://github.com/actcore/act-cli/releases) and Docker (`ghcr.io/actcore/act`).
25
+
26
+ ## act — Component Host
27
+
28
+ ```bash
29
+ # Discover tools in a component
30
+ act info --tools ghcr.io/actpkg/sqlite:0.1.0
31
+
32
+ # Call a tool
33
+ act call ghcr.io/actpkg/sqlite:0.1.0 query \
34
+ --args '{"sql":"SELECT sqlite_version()"}' \
35
+ --metadata '{"database_path":"/data/app.db"}' \
36
+ --allow-dir /data:./data
37
+
38
+ # Serve over HTTP
39
+ act run -l ghcr.io/actpkg/sqlite:0.1.0
40
+
41
+ # Serve over MCP stdio
42
+ act run --mcp ghcr.io/actpkg/sqlite:0.1.0
43
+ ```
44
+
45
+ Components can be referenced as:
46
+ - **OCI refs:** `ghcr.io/actpkg/sqlite:0.1.0`
47
+ - **HTTP URLs:** `https://example.com/component.wasm`
48
+ - **Local paths:** `./component.wasm`
49
+
50
+ Remote components are cached in `~/.cache/act/components/`.
51
+
52
+ ### Commands
53
+
54
+ | Command | Description |
55
+ |---------|-------------|
56
+ | `run` | Serve a component over ACT-HTTP (`-l`) or MCP stdio (`--mcp`) |
57
+ | `call` | Call a tool directly, print result to stdout |
58
+ | `info` | Show component metadata, tools, and schemas (`--tools`, `--format text\|json`) |
59
+ | `pull` | Download a component from OCI or HTTP to local file |
60
+
61
+ ### HTTP Endpoints (`run -l`)
62
+
63
+ | Method | Path | Description |
64
+ |--------|------|-------------|
65
+ | `GET` | `/info` | Component metadata |
66
+ | `POST` | `/metadata-schema` | JSON Schema for metadata |
67
+ | `POST/QUERY` | `/tools` | List tools |
68
+ | `POST/QUERY` | `/tools/{name}` | Call a tool (SSE with `Accept: text/event-stream`) |
69
+
70
+ ## act-build — Component Build Tool
71
+
72
+ ```bash
73
+ # Embed act:component metadata, act:skill, and WASM custom sections
74
+ act-build pack target/wasm32-wasip2/release/my_component.wasm
75
+
76
+ # Validate without modifying
77
+ act-build validate target/wasm32-wasip2/release/my_component.wasm
78
+ ```
79
+
80
+ Metadata is resolved via merge-patch from project manifests:
81
+
82
+ 1. **Base** from `Cargo.toml`, `pyproject.toml`, or `package.json` (name, version, description)
83
+ 2. **Inline patch** from the same manifest (`[package.metadata.act-component]`, `[tool.act-component]`, or `actComponent`)
84
+ 3. **`act.toml`** — highest priority, applied last
85
+
86
+ ## Platform Support
87
+
88
+ | Architecture | Linux (GNU) | Linux (musl) | macOS | Windows | Docker |
89
+ |-------------|:-----------:|:------------:|:-----:|:-------:|:------:|
90
+ | x86_64 | ✓ | ✓ | ✓ | ✓ | ✓ |
91
+ | aarch64 | ✓ | ✓ | ✓ | ✓ | ✓ |
92
+ | riscv64 | ✓ | ✓ | — | — | ✓ |
93
+
94
+ RISC-V (`riscv64`) is a first-class target. Regressions on RISC-V are release-blocking.
95
+
96
+ ## Building
97
+
98
+ ```bash
99
+ cargo build --release # both tools
100
+ cargo build -p act-cli # act only
101
+ cargo build -p act-build # act-build only
102
+ ```
103
+
104
+ Set `RUST_LOG=act=debug` for verbose output.
105
+
106
+ ## License
107
+
108
+ MIT OR Apache-2.0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@actcore/act-build",
3
- "version": "0.3.10",
3
+ "version": "0.5.0",
4
4
  "description": "Build tool for ACT WASM components",
5
5
  "license": "MIT OR Apache-2.0",
6
6
  "repository": {
@@ -14,13 +14,13 @@
14
14
  },
15
15
  "files": ["bin"],
16
16
  "optionalDependencies": {
17
- "@actcore/act-build-linux-x64": "0.3.10",
18
- "@actcore/act-build-linux-arm64": "0.3.10",
19
- "@actcore/act-build-linux-riscv64": "0.3.10",
20
- "@actcore/act-build-darwin-x64": "0.3.10",
21
- "@actcore/act-build-darwin-arm64": "0.3.10",
22
- "@actcore/act-build-win32-x64": "0.3.10",
23
- "@actcore/act-build-win32-arm64": "0.3.10"
17
+ "@actcore/act-build-linux-x64": "0.5.0",
18
+ "@actcore/act-build-linux-arm64": "0.5.0",
19
+ "@actcore/act-build-linux-riscv64": "0.5.0",
20
+ "@actcore/act-build-darwin-x64": "0.5.0",
21
+ "@actcore/act-build-darwin-arm64": "0.5.0",
22
+ "@actcore/act-build-win32-x64": "0.5.0",
23
+ "@actcore/act-build-win32-arm64": "0.5.0"
24
24
  },
25
25
  "publishConfig": {
26
26
  "access": "public",