170 Commits

Author SHA1 Message Date
David Noël-Romas ecbcd1a944 fix(atxp): pass -y to skills add command to skip interactive prompts
The previous fix only passed -y to npx (to auto-install the skills
package) but not to the skills add command itself, which has its own
interactive confirmation prompts.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
v1.22.1
2026-03-03 12:28:40 -06:00
GitHub Action c919848ee2 bump version to 1.22.0 [skip ci] 2026-03-03 15:52:00 +00:00
David Noël-Romas 3d1cd2d212 fix(atxp): remove shell sourcing dependency for OpenClaw compatibility
OpenClaw's exec tool in allowlist mode blocks shell builtins like
`source` and command substitution `$()`. The CLI already reads
credentials from ~/.atxp/config directly via getConnection() — this
commit removes the shell-sourcing path entirely:

- Config format changed from `export ATXP_CONNECTION="value"` to plain
  `ATXP_CONNECTION=value` (backward-compatible regex parses both)
- Deleted getShellProfile() and updateShellProfile() — no more shell
  profile modification on login
- Login output now says "npx atxp whoami" instead of "source ~/.atxp/config"
- SKILL.md: removed grep/cut/source patterns, added OpenClaw Integration section
- README.md: replaced source instruction with whoami verification

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
v1.22.0
2026-03-03 09:51:19 -06:00
David Noël-Romas 2b7c424f6b fix(atxp): fix misleading <n> param for claim-username in SKILL.md
Agents couldn't find or use claim-username because the parameter was
documented as <n> (looks numeric) instead of <username>. Expanded the
description to explain what the command does and valid username format.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 21:33:17 -06:00
GitHub Action 1c28a7e7c5 bump version to 1.21.2 [skip ci] 2026-03-02 22:23:38 +00:00
David Noël-Romas 4ceb47036b fix(atxp): pass -y to npx skills to skip interactive prompt
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
v1.21.2
2026-03-02 16:22:57 -06:00
GitHub Action 5fe2ce86c8 bump version to 1.21.1 [skip ci] 2026-02-25 23:12:02 +00:00
R-M-Naveen fc795ac857 chore: add mcpName for official MCP registry publishing
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
v1.21.1
2026-02-25 17:07:06 -06:00
GitHub Action 5b0444adf5 bump version to 1.21.0 [skip ci] 2026-02-25 19:29:52 +00:00
R-M-Naveen 7e3f973592 fix(atxp): replace no-explicit-any with Record<string, unknown> in polling
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
v1.21.0
2026-02-25 13:27:30 -06:00
R-M-Naveen 51771ce54d Merge pull request #53 from atxp-dev/naveen/agent-register-cli-added
fix(skill): replace all topup references with fund in SKILL.md
2026-02-25 13:24:57 -06:00
R-M-Naveen fde24b0fd4 fix(skill): replace all topup references with fund in SKILL.md
The topup command has been removed from the CLI. The fund command
now handles both Stripe payment links and USDC deposit addresses.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-25 13:23:39 -06:00
GitHub Action 54798f3f13 bump version to 1.20.0 [skip ci] 2026-02-25 18:02:10 +00:00
David Noël-Romas 3464db95c2 feat(atxp): use async polling for image, music, and video generation
Switch from synchronous blocking MCP calls to async initiate+poll
pattern for slow generation tools, avoiding timeout issues and showing
a spinner during generation.

- image: image_create_image_async + image_get_image_async (3s poll)
- music: music_create_async + music_get_async (5s poll)
- video: create_video + wait_for_video (10s poll)
- Extract getClient() and extractResult() from call-tool.ts for reuse

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
v1.20.0
2026-02-25 12:01:23 -06:00
GitHub Action 8d80edfe92 bump version to 1.19.2 [skip ci] 2026-02-25 04:30:15 +00:00
R-M-Naveen b6df0ff2ec Merge pull request #52 from atxp-dev/naveen/agent-register-cli-added
feat(atxp): add X-ATXP-Client header to agent registration requests
v1.19.2
2026-02-24 22:25:56 -06:00
R-M-Naveen 029cf85707 fix(atxp): read X-ATXP-Client version from package.json, add to list endpoint
- Replace hardcoded 'cli/1.19.1' with dynamic version from package.json
  so the header stays in sync across releases
- Add X-ATXP-Client header to GET /agents (listAgents) for consistent
  traffic attribution across all agent endpoints

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 22:22:03 -06:00
R-M-Naveen 4aae0d649e feat(atxp): add X-ATXP-Client header to agent registration requests
Sends cli/1.19.1 identifier on POST /agents/register and POST /agents
so the server can distinguish CLI traffic from direct API bot calls.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 22:14:49 -06:00
GitHub Action 60a0b9ec26 bump version to 1.19.1 [skip ci] 2026-02-24 17:58:39 +00:00
David Noël-Romas 80416f31f8 fix(atxp): pass userPrompt parameter to video MCP tool
The video MCP server expects `userPrompt` but the CLI was sending `prompt`,
causing the positional argument to arrive as undefined.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
v1.19.1
2026-02-24 11:57:25 -06:00
GitHub Action 214073cb65 bump version to 1.19.0 [skip ci] 2026-02-24 17:50:34 +00:00
R-M-Naveen bad0065c87 Merge pull request #51 from atxp-dev/naveen/agent-register-cli-added
feat(atxp): require device context for agent registration and creation
v1.19.0
2026-02-24 11:45:59 -06:00
R-M-Naveen b8c0a90bc6 feat(atxp): require device context for agent registration and creation
Fail explicitly with error codes (E_REG_001, E_REG_002) and support
contact when device context is unavailable or the server rejects the
request, instead of silently omitting the context parameter.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 11:40:56 -06:00
GitHub Action ac4625bbf3 bump version to 1.18.0 [skip ci] 2026-02-24 17:20:41 +00:00
David Noël-Romas e0e04e11e8 feat(atxp): add contacts command and phone filter options
Add local contacts database (add/list/show/edit/remove/search) stored
in ~/.atxp/contacts.json with cloud push/pull backup. Add --unread-only
and --direction filters to phone sms/calls commands, and update
direction labels from inbound/outbound to incoming/sent.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
v1.18.0
2026-02-24 11:19:27 -06:00
GitHub Action 3ad158c5c5 bump version to 1.17.0 [skip ci] 2026-02-24 16:19:04 +00:00
David Noël-Romas 760b5690ad feat(atxp): show registered phone number in whoami output
Fetches phone number from phone.mcp.atxp.ai in parallel with the
account info request and displays it when present.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
v1.17.0
2026-02-24 10:17:39 -06:00
emilioacc 24a1530791 ci: add AI code review workflow (#50)
* ci: add AI code review workflow

Adds a self-contained AI code review workflow using
anthropics/claude-code-action@v1. Reviews PR changes and posts
structured feedback. Self-contained because this repo is in a
different org from the reusable workflow.

Part of ATXP-1602.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* ci: trigger fresh workflow run with secret

* ci: re-trigger with API key

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-23 23:35:22 +00:00
GitHub Action 3cafef9756 bump version to 1.16.0 [skip ci] 2026-02-23 22:58:40 +00:00
David Noël-Romas 4ac62b74ec feat(atxp): add phone command for SMS and voice calls
Exposes phone.mcp.atxp.ai MCP server with 11 subcommands: register,
release, configure-voice, sms, read-sms, send-sms, get-attachment,
call, calls, read-call, and search. Updates skill documentation with
phone command reference, security boundaries, and pricing.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
v1.16.0
2026-02-23 16:57:26 -06:00
GitHub Action 198eef5db7 bump version to 1.15.0 [skip ci] 2026-02-23 17:58:56 +00:00
David Noël-Romas 65797bafa7 fix: sync lock file with zvec ^0.2.0 optional dep
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
v1.15.0
2026-02-23 11:36:44 -06:00
David Noël-Romas 145d2a4936 feat(atxp): auto-install zvec on first use, default to skill install
Auto-install @zvec/zvec into ~/.atxp/deps on first `memory index` or
`memory search` call so agents using npx get local vector search
without manual setup. Fix zvec optional dep version to ^0.2.0. When
`npx atxp` is run with no arguments, install the atxp skill via
`npx skills add`.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-23 11:30:05 -06:00
GitHub Action c6c7c3f5cd bump version to 1.14.0 [skip ci] 2026-02-23 17:10:29 +00:00
David Noël-Romas a8bae206ce fix(atxp): fix zvec integration bugs and improve memory file collection
Fix three zvec integration bugs: ESM dynamic import not unwrapping
CJS default export, wrong indexParams key (type→indexType), and search
query being contaminated with flag values. Replace .md-only file filter
with gitignore-aware collection of all text files, skip binary files
and common directories (node_modules, .git, etc.), and increase file
limit to 500.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
v1.14.0
2026-02-23 11:08:54 -06:00
GitHub Action fc18fecf00 bump version to 1.13.0 [skip ci] 2026-02-23 16:53:23 +00:00
R-M-Naveen 1ebda95cb1 Merge pull request #47 from atxp-dev/naveen/skill.md-refinements
docs: optimize SKILL.md for discovery platforms and tone down securit…
v1.13.0
2026-02-23 10:48:58 -06:00
R-M-Naveen a3a6c0303f fix: exclude vendor directory from eslint
Obfuscated .cjs vendor files cause lint errors in CI. Exclude
src/vendor/ from the lint command since vendor code shouldn't be linted.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-23 10:47:12 -06:00
R-M-Naveen 4b79a71c81 feat(atxp): unify fund command, remove topup
Replace separate `topup` and `deposit` commands with a unified `fund`
command that calls POST /api/funding/fund and displays both crypto
deposit addresses and payment links (for agent accounts).

- Rewrite deposit.ts to use Bearer auth and call unified endpoint
- Remove topup.ts (functionality merged into fund)
- Update help.ts and index.ts routing
- Include transactions command and memory from main merge

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-23 10:41:43 -06:00
R-M-Naveen e6f0dbe8fe merge: pull main into naveen/skill.md-refinements 2026-02-23 10:32:19 -06:00
GitHub Action da168ea714 bump version to 1.12.0 [skip ci] 2026-02-23 15:57:09 +00:00
David Noël-Romas 1a5f6c8514 feat(atxp): send runtime context with auth requests
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
v1.12.0
2026-02-23 09:53:39 -06:00
David N f3c0330ae0 Merge pull request #49 from atxp-dev/claude/memory-management-refactor-qXjEc 2026-02-22 17:42:06 -06:00
Claude 5f23c242f2 refactor(atxp): rename backup to memory, add local vector search via zvec
Refactor the backup tool and skill into a broader "memory management"
system. Cloud backup/restore (push/pull/status) is preserved with full
backward compatibility ('backup' is an alias for 'memory'). Two new
subcommands are added:

- memory index --path <dir>: chunks .md files by heading, generates
  feature-hash embeddings (256-dim), and stores them in a local zvec
  HNSW index for fast approximate nearest-neighbor search.
- memory search <query> --path <dir>: converts the query to the same
  vector space and returns the top-k most similar memory chunks with
  file paths, headings, line numbers, and similarity scores.

Local search is fully offline — no network or authentication required.

https://claude.ai/code/session_017TjuWQCrpzPM4rYdTTPFBQ
2026-02-22 22:07:54 +00:00
David N 60a85796e7 Merge pull request #48 from atxp-dev/claude/backup-tool-zip-compression-Yax9w 2026-02-22 15:33:25 -06:00
Claude 0fefad471c feat(atxp): compress backup files into zip archive before upload
The backup tool now uses jszip to create DEFLATE-compressed zip archives
instead of sending raw JSON payloads. This reduces transfer size and
bandwidth usage. Includes server migration instructions for the
corresponding endpoint changes.

https://claude.ai/code/session_01HZSR7WQPTnnuo8Pmi8UwAw
2026-02-22 20:46:08 +00:00
GitHub Action 3ab4b05234 bump version to 1.11.0 [skip ci] 2026-02-22 05:44:12 +00:00
David Noël-Romas 1c10051244 docs(atxp): address ClawHub OpenClaw scanner concerns
The OpenClaw LLM scanner flagged the skill as "suspicious" across
five dimensions. Changes to improve the score:

- Add top-level permissions field to frontmatter declaring network,
  filesystem, subprocess, and credential access explicitly
- Expand compatibility field to mention all runtime requirements
  (credential, network, filesystem, npx download)
- Add Runtime Execution Model section documenting npx download
  behavior, version pinning, source verification, and cache location
- Add human-approval recommendations for financial operations:
  require approval before first paid call, use test wallets,
  implement per-session spending caps, treat email send as high-risk
- Remove "No human approval per transaction" claim and replace with
  pointer to Financial Safety guardrails

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
v1.11.0
2026-02-21 23:42:17 -06:00
David Noël-Romas e2b9d9a15f docs(atxp): harden SKILL.md against security audit findings
Address Snyk W007 (HIGH): remove --token CLI examples and echo
$ATXP_CONNECTION pattern that expose secrets in process listings
and shell history. Add explicit rule against passing credentials
as CLI arguments.

Address Snyk W011 / Trust Hub prompt injection: add boundary
marker guidance ([BEGIN/END UNTRUSTED CONTENT]) for untrusted
output from search, email, and X commands.

Address Snyk W009: add Financial Safety section with guardrails
against externally-triggered spending, payment link generation,
and social engineering vectors.

Address Trust Hub command execution: add explicit rule against
sourcing ~/.atxp/config (uses export syntax = shell execution).

Update version pinning guidance to recommend exact versions and
npm audit signatures for supply-chain verification.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-21 23:39:47 -06:00
David Noël-Romas 66b8b1fe02 feat(atxp): add backup command for agent identity and memory files
Push/pull .md files to ATXP servers so agents can preserve their
identity (SOUL.md, MEMORY.md, etc.) across workspace rebuilds.
Separate skill file with its own security boundary since it reads/writes
arbitrary directories.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-21 23:38:40 -06:00