@ornexus/neocortex 4.59.1
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/LICENSE +56 -0
- package/LICENSE-COMMERCIAL.md +70 -0
- package/README.md +58 -0
- package/dist/sbom.cdx.json +7067 -0
- package/docs/install/coderabbit-manual-setup.md +86 -0
- package/docs/install/installer-diagnostics.md +107 -0
- package/docs/install/linux-global-install.md +97 -0
- package/install.js +572 -0
- package/install.ps1 +2214 -0
- package/install.sh +2013 -0
- package/package.json +118 -0
- package/packages/client/dist/adapters/adapter-registry.d.ts +61 -0
- package/packages/client/dist/adapters/adapter-registry.js +1 -0
- package/packages/client/dist/adapters/antigravity-adapter.d.ts +18 -0
- package/packages/client/dist/adapters/antigravity-adapter.js +2 -0
- package/packages/client/dist/adapters/claude-code-adapter.d.ts +19 -0
- package/packages/client/dist/adapters/claude-code-adapter.js +3 -0
- package/packages/client/dist/adapters/codex-adapter.d.ts +19 -0
- package/packages/client/dist/adapters/codex-adapter.js +2 -0
- package/packages/client/dist/adapters/cursor-adapter.d.ts +19 -0
- package/packages/client/dist/adapters/cursor-adapter.js +4 -0
- package/packages/client/dist/adapters/gemini-adapter.d.ts +18 -0
- package/packages/client/dist/adapters/gemini-adapter.js +2 -0
- package/packages/client/dist/adapters/index.d.ts +19 -0
- package/packages/client/dist/adapters/index.js +1 -0
- package/packages/client/dist/adapters/platform-detector.d.ts +48 -0
- package/packages/client/dist/adapters/platform-detector.js +1 -0
- package/packages/client/dist/adapters/target-adapter.d.ts +70 -0
- package/packages/client/dist/adapters/target-adapter.js +0 -0
- package/packages/client/dist/adapters/vscode-adapter.d.ts +19 -0
- package/packages/client/dist/adapters/vscode-adapter.js +2 -0
- package/packages/client/dist/agent/refresh-stubs.d.ts +80 -0
- package/packages/client/dist/agent/refresh-stubs.js +2 -0
- package/packages/client/dist/agent/update-agent-yaml.d.ts +26 -0
- package/packages/client/dist/agent/update-agent-yaml.js +1 -0
- package/packages/client/dist/agent/update-description.d.ts +45 -0
- package/packages/client/dist/agent/update-description.js +1 -0
- package/packages/client/dist/cache/crypto-utils.d.ts +30 -0
- package/packages/client/dist/cache/crypto-utils.js +1 -0
- package/packages/client/dist/cache/encrypted-cache.d.ts +30 -0
- package/packages/client/dist/cache/encrypted-cache.js +1 -0
- package/packages/client/dist/cache/in-memory-asset-cache.d.ts +62 -0
- package/packages/client/dist/cache/in-memory-asset-cache.js +1 -0
- package/packages/client/dist/cache/index.d.ts +13 -0
- package/packages/client/dist/cache/index.js +1 -0
- package/packages/client/dist/cache/protected-pi-boundary.d.ts +19 -0
- package/packages/client/dist/cache/protected-pi-boundary.js +1 -0
- package/packages/client/dist/checkpoint/checkpoint-client-reader.d.ts +45 -0
- package/packages/client/dist/checkpoint/checkpoint-client-reader.js +2 -0
- package/packages/client/dist/checkpoint/index.d.ts +12 -0
- package/packages/client/dist/checkpoint/index.js +1 -0
- package/packages/client/dist/checkpoint/shared-checkpoint-types.d.ts +85 -0
- package/packages/client/dist/checkpoint/shared-checkpoint-types.js +1 -0
- package/packages/client/dist/cli.d.ts +14 -0
- package/packages/client/dist/cli.js +48 -0
- package/packages/client/dist/commands/activate.d.ts +55 -0
- package/packages/client/dist/commands/activate.js +8 -0
- package/packages/client/dist/commands/cache-status.d.ts +39 -0
- package/packages/client/dist/commands/cache-status.js +2 -0
- package/packages/client/dist/commands/invoke.d.ts +229 -0
- package/packages/client/dist/commands/invoke.js +63 -0
- package/packages/client/dist/commands/refresh-memory.d.ts +11 -0
- package/packages/client/dist/commands/refresh-memory.js +1 -0
- package/packages/client/dist/config/resolver-selection.d.ts +40 -0
- package/packages/client/dist/config/resolver-selection.js +1 -0
- package/packages/client/dist/config/secure-config.d.ts +78 -0
- package/packages/client/dist/config/secure-config.js +12 -0
- package/packages/client/dist/constants.d.ts +25 -0
- package/packages/client/dist/constants.js +1 -0
- package/packages/client/dist/context/context-collector.d.ts +28 -0
- package/packages/client/dist/context/context-collector.js +2 -0
- package/packages/client/dist/context/context-sanitizer.d.ts +28 -0
- package/packages/client/dist/context/context-sanitizer.js +1 -0
- package/packages/client/dist/continuity/continuity-client-state-store.d.ts +183 -0
- package/packages/client/dist/continuity/continuity-client-state-store.js +1 -0
- package/packages/client/dist/continuity/invoke-hooks.d.ts +18 -0
- package/packages/client/dist/continuity/invoke-hooks.js +1 -0
- package/packages/client/dist/continuity/migrations/001-initial-schema.d.ts +11 -0
- package/packages/client/dist/continuity/migrations/001-initial-schema.js +263 -0
- package/packages/client/dist/continuity/sqlite-store.d.ts +409 -0
- package/packages/client/dist/continuity/sqlite-store.js +226 -0
- package/packages/client/dist/errors/error-messages.d.ts +40 -0
- package/packages/client/dist/errors/error-messages.js +2 -0
- package/packages/client/dist/graph-retrieval/pre-command-hook.d.ts +31 -0
- package/packages/client/dist/graph-retrieval/pre-command-hook.js +1 -0
- package/packages/client/dist/graph-retrieval/shared-graph-retrieval-contract.d.ts +77 -0
- package/packages/client/dist/graph-retrieval/shared-graph-retrieval-contract.js +1 -0
- package/packages/client/dist/i18n/first-run.d.ts +23 -0
- package/packages/client/dist/i18n/first-run.js +2 -0
- package/packages/client/dist/index.d.ts +56 -0
- package/packages/client/dist/index.js +1 -0
- package/packages/client/dist/license/index.d.ts +5 -0
- package/packages/client/dist/license/index.js +1 -0
- package/packages/client/dist/license/license-client.d.ts +79 -0
- package/packages/client/dist/license/license-client.js +1 -0
- package/packages/client/dist/machine/fingerprint.d.ts +34 -0
- package/packages/client/dist/machine/fingerprint.js +2 -0
- package/packages/client/dist/machine/index.d.ts +5 -0
- package/packages/client/dist/machine/index.js +1 -0
- package/packages/client/dist/memory/project-memory-writer.d.ts +74 -0
- package/packages/client/dist/memory/project-memory-writer.js +36 -0
- package/packages/client/dist/memory/shared-project-memory-types.d.ts +370 -0
- package/packages/client/dist/memory/shared-project-memory-types.js +2 -0
- package/packages/client/dist/policy/architecture-policy.d.ts +40 -0
- package/packages/client/dist/policy/architecture-policy.js +2 -0
- package/packages/client/dist/policy/index.d.ts +8 -0
- package/packages/client/dist/policy/index.js +1 -0
- package/packages/client/dist/policy/shared-policy-types.d.ts +89 -0
- package/packages/client/dist/policy/shared-policy-types.js +0 -0
- package/packages/client/dist/resilience/circuit-breaker.d.ts +70 -0
- package/packages/client/dist/resilience/circuit-breaker.js +1 -0
- package/packages/client/dist/resilience/degradation-manager.d.ts +67 -0
- package/packages/client/dist/resilience/degradation-manager.js +1 -0
- package/packages/client/dist/resilience/freshness-indicator.d.ts +59 -0
- package/packages/client/dist/resilience/freshness-indicator.js +1 -0
- package/packages/client/dist/resilience/index.d.ts +8 -0
- package/packages/client/dist/resilience/index.js +1 -0
- package/packages/client/dist/resilience/recovery-detector.d.ts +59 -0
- package/packages/client/dist/resilience/recovery-detector.js +1 -0
- package/packages/client/dist/resolvers/asset-resolver.d.ts +79 -0
- package/packages/client/dist/resolvers/asset-resolver.js +0 -0
- package/packages/client/dist/resolvers/local-resolver.d.ts +26 -0
- package/packages/client/dist/resolvers/local-resolver.js +8 -0
- package/packages/client/dist/resolvers/remote-resolver.d.ts +91 -0
- package/packages/client/dist/resolvers/remote-resolver.js +1 -0
- package/packages/client/dist/runner/cli.d.ts +121 -0
- package/packages/client/dist/runner/cli.js +20 -0
- package/packages/client/dist/runner/scheduler.d.ts +116 -0
- package/packages/client/dist/runner/scheduler.js +6 -0
- package/packages/client/dist/runner-cli.d.ts +9 -0
- package/packages/client/dist/runner-cli.js +3 -0
- package/packages/client/dist/state/project-state-snapshot.d.ts +15 -0
- package/packages/client/dist/state/project-state-snapshot.js +1 -0
- package/packages/client/dist/state/state-json-repair.d.ts +17 -0
- package/packages/client/dist/state/state-json-repair.js +3 -0
- package/packages/client/dist/telemetry/index.d.ts +5 -0
- package/packages/client/dist/telemetry/index.js +1 -0
- package/packages/client/dist/telemetry/offline-queue.d.ts +57 -0
- package/packages/client/dist/telemetry/offline-queue.js +1 -0
- package/packages/client/dist/tier/index.d.ts +5 -0
- package/packages/client/dist/tier/index.js +1 -0
- package/packages/client/dist/tier/tier-aware-client.d.ts +105 -0
- package/packages/client/dist/tier/tier-aware-client.js +1 -0
- package/packages/client/dist/types/index.d.ts +140 -0
- package/packages/client/dist/types/index.js +1 -0
- package/packages/client/dist/yoloop/discovery-hook.d.ts +85 -0
- package/packages/client/dist/yoloop/discovery-hook.js +2 -0
- package/packages/client/dist/yoloop/index.d.ts +10 -0
- package/packages/client/dist/yoloop/index.js +1 -0
- package/packages/client/dist/yoloop/invoke-hooks.d.ts +125 -0
- package/packages/client/dist/yoloop/invoke-hooks.js +5 -0
- package/packages/client/dist/yoloop/shared-discover-epics.d.ts +289 -0
- package/packages/client/dist/yoloop/shared-discover-epics.js +1 -0
- package/packages/client/dist/yoloop/shared-yoloop-types.d.ts +172 -0
- package/packages/client/dist/yoloop/shared-yoloop-types.js +1 -0
- package/packages/client/dist/yoloop/yoloop-client-state-store.d.ts +124 -0
- package/packages/client/dist/yoloop/yoloop-client-state-store.js +1 -0
- package/postinstall.js +754 -0
- package/targets-stubs/antigravity/README.md +36 -0
- package/targets-stubs/antigravity/gemini.md +29 -0
- package/targets-stubs/antigravity/install-antigravity.sh +153 -0
- package/targets-stubs/antigravity/mcp-config.json +30 -0
- package/targets-stubs/antigravity/skill/SKILL.md +159 -0
- package/targets-stubs/claude-code/.mcp.json +32 -0
- package/targets-stubs/claude-code/README.md +20 -0
- package/targets-stubs/claude-code/neocortex-root.agent.yaml +42 -0
- package/targets-stubs/claude-code/neocortex-root.md +310 -0
- package/targets-stubs/claude-code/neocortex.agent.yaml +42 -0
- package/targets-stubs/claude-code/neocortex.md +378 -0
- package/targets-stubs/codex/AGENTS.md +244 -0
- package/targets-stubs/codex/README.md +47 -0
- package/targets-stubs/codex/config-mcp.toml +22 -0
- package/targets-stubs/codex/install-codex.sh +63 -0
- package/targets-stubs/codex/neocortex.toml +29 -0
- package/targets-stubs/cursor/README.md +33 -0
- package/targets-stubs/cursor/agent.md +204 -0
- package/targets-stubs/cursor/install-cursor.sh +50 -0
- package/targets-stubs/cursor/mcp.json +30 -0
- package/targets-stubs/gemini-cli/README.md +34 -0
- package/targets-stubs/gemini-cli/agent.md +234 -0
- package/targets-stubs/gemini-cli/agents/neocortex.md +54 -0
- package/targets-stubs/gemini-cli/gemini.md +46 -0
- package/targets-stubs/gemini-cli/install-gemini.sh +70 -0
- package/targets-stubs/gemini-cli/settings-mcp.json +30 -0
- package/targets-stubs/kimi/mcp.json +33 -0
- package/targets-stubs/kimi/neocortex.md +54 -0
- package/targets-stubs/lib/mcp-merge.js +189 -0
- package/targets-stubs/openclaw/README.md +12 -0
- package/targets-stubs/openclaw/SKILL.md +88 -0
- package/targets-stubs/opencode/neocortex-root.md +261 -0
- package/targets-stubs/opencode/neocortex.md +59 -0
- package/targets-stubs/opencode/opencode-mcp.json +35 -0
- package/targets-stubs/vscode/README.md +34 -0
- package/targets-stubs/vscode/copilot-instructions.md +47 -0
- package/targets-stubs/vscode/install-vscode.sh +72 -0
- package/targets-stubs/vscode/mcp.json +36 -0
- package/targets-stubs/vscode/neocortex.agent.md +245 -0
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# Target Stub: Google Antigravity
|
|
2
|
+
|
|
3
|
+
**Thin Client Mode** | Remote content delivery
|
|
4
|
+
|
|
5
|
+
> **EXPERIMENTAL**: Google Antigravity is in public preview.
|
|
6
|
+
|
|
7
|
+
This is a thin-client stub. The full target configuration, agent definitions,
|
|
8
|
+
and pipeline instructions are delivered securely via the Neocortex remote
|
|
9
|
+
content delivery system.
|
|
10
|
+
|
|
11
|
+
## Quick Start
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
# Install Neocortex
|
|
15
|
+
npx @ornexus/neocortex
|
|
16
|
+
|
|
17
|
+
# Activate license for remote content
|
|
18
|
+
neocortex activate YOUR-LICENSE-KEY # Get yours at https://neocortex.sh/portal/login
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## Contents
|
|
22
|
+
|
|
23
|
+
| File | Description |
|
|
24
|
+
|---|---|
|
|
25
|
+
| `skill/SKILL.md` | Thin-client skill stub (delegates to neocortex-client) |
|
|
26
|
+
| `gemini.md` | Thin-client GEMINI.md (no @import directives) |
|
|
27
|
+
| `mcp-config.json` | MCP server configuration (Playwright + Context7) |
|
|
28
|
+
|
|
29
|
+
## How It Works
|
|
30
|
+
|
|
31
|
+
1. The stub skill receives user invocations
|
|
32
|
+
2. It calls `neocortex-client invoke` with the user's arguments
|
|
33
|
+
3. The server returns full pipeline instructions
|
|
34
|
+
4. The agent follows the returned instructions exactly
|
|
35
|
+
|
|
36
|
+
For more information, visit: https://neocortex.sh
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# 🧠 Neocortex v4.59.1 | OrNexus Team
|
|
2
|
+
|
|
3
|
+
This project uses Neocortex, a Development Orchestrator.
|
|
4
|
+
|
|
5
|
+
All orchestration logic, standards, skills, and workflows are delivered by the remote Neocortex server.
|
|
6
|
+
Use the Neocortex skill to interact with the pipeline.
|
|
7
|
+
|
|
8
|
+
## Canonical Project Memory
|
|
9
|
+
|
|
10
|
+
`NEOCORTEX.md` is the canonical project-memory source. Antigravity/Gemini memory
|
|
11
|
+
must resolve shared context back to that file. When durable platform context
|
|
12
|
+
changes here, run `*update-memory` so `NEOCORTEX.md` is refreshed instead of
|
|
13
|
+
letting platform-only memory drift.
|
|
14
|
+
|
|
15
|
+
## Usage
|
|
16
|
+
|
|
17
|
+
Invoke the Neocortex skill with your command. The skill will call `neocortex-client invoke` to fetch instructions from the server.
|
|
18
|
+
|
|
19
|
+
### Examples
|
|
20
|
+
|
|
21
|
+
- `@neocortex *menu` - Show interactive menu with all available commands
|
|
22
|
+
- `@neocortex *status` - Show project status dashboard
|
|
23
|
+
- `@neocortex *implement @docs/stories/1.1.story.md` - Implement a story
|
|
24
|
+
|
|
25
|
+
## Activation
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
neocortex activate YOUR-LICENSE-KEY # Get yours at https://neocortex.sh/portal/login
|
|
29
|
+
```
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
#!/bin/sh
|
|
2
|
+
# Neocortex - Google Antigravity Install Adapter (Thin Client)
|
|
3
|
+
# Simplified installer for npm tarball mode (targets-stubs only)
|
|
4
|
+
|
|
5
|
+
# Additive JSON merge for Antigravity MCP config.
|
|
6
|
+
# Canonical schema: root `mcpServers`; remote servers use `serverUrl`.
|
|
7
|
+
# Managed legacy top-level entries are migrated into `mcpServers`; custom entries
|
|
8
|
+
# are preserved as-is to avoid destructive conversion of user-owned config.
|
|
9
|
+
_merge_antigravity_mcp() {
|
|
10
|
+
local stub_file="$1"
|
|
11
|
+
local dest_file="$2"
|
|
12
|
+
|
|
13
|
+
if [ ! -f "$dest_file" ]; then
|
|
14
|
+
cp "$stub_file" "$dest_file"
|
|
15
|
+
echo "[ANTIGRAVITY] Created MCP config: $dest_file"
|
|
16
|
+
return 0
|
|
17
|
+
fi
|
|
18
|
+
|
|
19
|
+
if command -v python3 >/dev/null 2>&1; then
|
|
20
|
+
local tmp="${dest_file}.neocortex.tmp"
|
|
21
|
+
if python3 - "$dest_file" "$stub_file" "$tmp" <<'PYEOF'
|
|
22
|
+
import json, sys
|
|
23
|
+
from pathlib import Path
|
|
24
|
+
dest_path, stub_path, tmp_path = map(Path, sys.argv[1:4])
|
|
25
|
+
managed = {"playwright", "context7", "browser_use", "figma", "shadcn", "chrome-devtools"}
|
|
26
|
+
try:
|
|
27
|
+
with dest_path.open() as f:
|
|
28
|
+
dest = json.load(f)
|
|
29
|
+
except Exception:
|
|
30
|
+
backup = dest_path.with_name(dest_path.name + ".neocortex-backup-parse-error")
|
|
31
|
+
backup.write_bytes(dest_path.read_bytes())
|
|
32
|
+
print(f"[ANTIGRAVITY] WARN: parseError backupCreated={backup}; original preserved")
|
|
33
|
+
sys.exit(0)
|
|
34
|
+
with stub_path.open() as f:
|
|
35
|
+
stub = json.load(f)
|
|
36
|
+
|
|
37
|
+
if not isinstance(dest, dict):
|
|
38
|
+
backup = dest_path.with_name(dest_path.name + ".neocortex-backup-structural")
|
|
39
|
+
backup.write_bytes(dest_path.read_bytes())
|
|
40
|
+
dest = {}
|
|
41
|
+
print(f"[ANTIGRAVITY] backupCreated={backup}")
|
|
42
|
+
|
|
43
|
+
changed = False
|
|
44
|
+
if not isinstance(dest.get("mcpServers"), dict):
|
|
45
|
+
if "mcpServers" in dest:
|
|
46
|
+
backup = dest_path.with_name(dest_path.name + ".neocortex-backup-structural")
|
|
47
|
+
backup.write_bytes(dest_path.read_bytes())
|
|
48
|
+
print(f"[ANTIGRAVITY] backupCreated={backup}")
|
|
49
|
+
dest["mcpServers"] = {}
|
|
50
|
+
changed = True
|
|
51
|
+
|
|
52
|
+
migrated = []
|
|
53
|
+
for name in list(dest.keys()):
|
|
54
|
+
if name in managed:
|
|
55
|
+
value = dest.pop(name)
|
|
56
|
+
if isinstance(value, dict) and "httpUrl" in value and "serverUrl" not in value:
|
|
57
|
+
value = dict(value)
|
|
58
|
+
value["serverUrl"] = value.pop("httpUrl")
|
|
59
|
+
dest["mcpServers"][name] = value
|
|
60
|
+
migrated.append(name)
|
|
61
|
+
changed = True
|
|
62
|
+
|
|
63
|
+
updated = []
|
|
64
|
+
added = []
|
|
65
|
+
for name, value in stub.get("mcpServers", {}).items():
|
|
66
|
+
if name in dest["mcpServers"]:
|
|
67
|
+
updated.append(name)
|
|
68
|
+
else:
|
|
69
|
+
added.append(name)
|
|
70
|
+
dest["mcpServers"][name] = value
|
|
71
|
+
changed = True
|
|
72
|
+
|
|
73
|
+
if changed:
|
|
74
|
+
with tmp_path.open('w') as f:
|
|
75
|
+
json.dump(dest, f, indent=2)
|
|
76
|
+
f.write('\n')
|
|
77
|
+
else:
|
|
78
|
+
tmp_path.write_text(json.dumps(dest, indent=2) + '\n')
|
|
79
|
+
print("[ANTIGRAVITY] migration summary: "
|
|
80
|
+
f"added={','.join(added) or '-'} updated={','.join(updated) or '-'} "
|
|
81
|
+
f"migrated={','.join(migrated) or '-'} preserved=custom")
|
|
82
|
+
PYEOF
|
|
83
|
+
then
|
|
84
|
+
if [ -f "$tmp" ]; then
|
|
85
|
+
if ! cmp -s "$tmp" "$dest_file"; then
|
|
86
|
+
cp "$dest_file" "${dest_file}.neocortex-backup-structural" 2>/dev/null || true
|
|
87
|
+
mv "$tmp" "$dest_file"
|
|
88
|
+
else
|
|
89
|
+
rm -f "$tmp"
|
|
90
|
+
fi
|
|
91
|
+
fi
|
|
92
|
+
echo "[ANTIGRAVITY] Merged MCP config into: $dest_file (via python3)"
|
|
93
|
+
return 0
|
|
94
|
+
fi
|
|
95
|
+
rm -f "$tmp"
|
|
96
|
+
fi
|
|
97
|
+
|
|
98
|
+
if command -v jq >/dev/null 2>&1; then
|
|
99
|
+
local tmp="${dest_file}.neocortex.tmp"
|
|
100
|
+
if jq -s '.[0].mcpServers = ((.[0].mcpServers // {}) * (.[1].mcpServers // {})) | .[0]' "$dest_file" "$stub_file" > "$tmp" 2>/dev/null; then
|
|
101
|
+
cp "$dest_file" "${dest_file}.neocortex-backup-structural" 2>/dev/null || true
|
|
102
|
+
mv "$tmp" "$dest_file"
|
|
103
|
+
echo "[ANTIGRAVITY] Merged MCP config into: $dest_file (via jq)"
|
|
104
|
+
return 0
|
|
105
|
+
fi
|
|
106
|
+
cp "$dest_file" "${dest_file}.neocortex-backup-parse-error" 2>/dev/null || true
|
|
107
|
+
rm -f "$tmp"
|
|
108
|
+
fi
|
|
109
|
+
|
|
110
|
+
echo "[ANTIGRAVITY] WARN: jq and python3 not found; leaving existing $dest_file untouched"
|
|
111
|
+
echo "[ANTIGRAVITY] WARN: Stub available at: $stub_file"
|
|
112
|
+
return 0
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
install_antigravity() {
|
|
116
|
+
local source_dir="${1:?SOURCE_DIR required}"
|
|
117
|
+
local dest_dir="${2:?DEST_DIR required}"
|
|
118
|
+
local ag_target="$source_dir/targets-stubs/antigravity"
|
|
119
|
+
local gemini_home="${GEMINI_HOME:-$HOME/.gemini}"
|
|
120
|
+
|
|
121
|
+
if [ ! -d "$ag_target" ]; then
|
|
122
|
+
echo "[ANTIGRAVITY] ERROR: Stub directory not found: $ag_target" >&2
|
|
123
|
+
return 1
|
|
124
|
+
fi
|
|
125
|
+
|
|
126
|
+
echo "[ANTIGRAVITY] Installing Neocortex for Google Antigravity (thin-client mode)..."
|
|
127
|
+
echo "[ANTIGRAVITY] WARNING: Antigravity is in public preview - APIs may change"
|
|
128
|
+
|
|
129
|
+
# Create destination directories
|
|
130
|
+
mkdir -p "$dest_dir/.agent/skills/neocortex" \
|
|
131
|
+
"$gemini_home/antigravity"
|
|
132
|
+
|
|
133
|
+
# 1. Copy SKILL.md stub
|
|
134
|
+
if [ -f "$ag_target/skill/SKILL.md" ]; then
|
|
135
|
+
cp "$ag_target/skill/SKILL.md" "$dest_dir/.agent/skills/neocortex/SKILL.md"
|
|
136
|
+
echo "[ANTIGRAVITY] Installed skill stub: .agent/skills/neocortex/SKILL.md"
|
|
137
|
+
fi
|
|
138
|
+
|
|
139
|
+
# 2. Additive merge MCP config (preserves user-configured servers)
|
|
140
|
+
if [ -f "$ag_target/mcp-config.json" ]; then
|
|
141
|
+
_merge_antigravity_mcp "$ag_target/mcp-config.json" "$gemini_home/antigravity/mcp_config.json" || true
|
|
142
|
+
fi
|
|
143
|
+
|
|
144
|
+
# 3. Copy GEMINI.md stub to project root
|
|
145
|
+
if [ -f "$ag_target/gemini.md" ]; then
|
|
146
|
+
cp "$ag_target/gemini.md" "$dest_dir/GEMINI.md"
|
|
147
|
+
echo "[ANTIGRAVITY] Installed: GEMINI.md (project root)"
|
|
148
|
+
fi
|
|
149
|
+
|
|
150
|
+
echo "[ANTIGRAVITY] Thin-client installation complete!"
|
|
151
|
+
echo "[ANTIGRAVITY] Content delivered by remote server. Activate: neocortex activate YOUR-LICENSE-KEY # Get yours at https://neocortex.sh/portal/login"
|
|
152
|
+
return 0
|
|
153
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
{
|
|
2
|
+
"mcpServers": {
|
|
3
|
+
"playwright": {
|
|
4
|
+
"command": "npx",
|
|
5
|
+
"args": ["-y", "@playwright/mcp@latest"]
|
|
6
|
+
},
|
|
7
|
+
"context7": {
|
|
8
|
+
"serverUrl": "https://mcp.context7.com/mcp"
|
|
9
|
+
},
|
|
10
|
+
"browser_use": {
|
|
11
|
+
"command": "uvx",
|
|
12
|
+
"args": ["--from", "browser-use[cli]", "browser-use", "--mcp"],
|
|
13
|
+
"env": {
|
|
14
|
+
"OPENAI_API_KEY": "${OPENAI_API_KEY}",
|
|
15
|
+
"ANTHROPIC_API_KEY": "${ANTHROPIC_API_KEY}"
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
"figma": {
|
|
19
|
+
"serverUrl": "https://mcp.figma.com/mcp"
|
|
20
|
+
},
|
|
21
|
+
"shadcn": {
|
|
22
|
+
"command": "npx",
|
|
23
|
+
"args": ["shadcn@latest", "mcp"]
|
|
24
|
+
},
|
|
25
|
+
"chrome-devtools": {
|
|
26
|
+
"command": "npx",
|
|
27
|
+
"args": ["-y", "chrome-devtools-mcp@latest"]
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: neocortex
|
|
3
|
+
description: "🧠 Neocortex v4.59.1 | OrNexus Team"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
<!--
|
|
7
|
+
/loop equivalent in Antigravity (P95.09): Antigravity usa skill system proprio.
|
|
8
|
+
Quando o server retornar instrucoes de wrappers `loop-ci-watch`, `loop-deploy-health`
|
|
9
|
+
ou `loop-flaky-retry` (epic P95 -- YOLO Hardening), tente invocar uma skill `loop`
|
|
10
|
+
equivalente (se existir em Antigravity). Fail-open: se skill ausente, orquestre via
|
|
11
|
+
shell loop fallback. Cap iteracoes recomendado: 30.
|
|
12
|
+
-->
|
|
13
|
+
|
|
14
|
+
<!-- CRITICAL: Plugin Conflict Prevention -->
|
|
15
|
+
## IMPORTANT: Do NOT Intercept Neocortex Arguments
|
|
16
|
+
|
|
17
|
+
**ALL text after `@neocortex` or trigger keywords MUST be passed VERBATIM to `neocortex-client invoke`.**
|
|
18
|
+
|
|
19
|
+
Tokens starting with `*` (e.g. `*commit-push`, `*implement`, `*status`, `*diagnose`,
|
|
20
|
+
`*yolo`, `*review`, `*create-epic`, `*help`) are **Neocortex server triggers**, NOT
|
|
21
|
+
Antigravity built-in commands, skills, or workflows.
|
|
22
|
+
|
|
23
|
+
**Rules**:
|
|
24
|
+
- NEVER interpret `*`-prefixed arguments as Antigravity built-in commands, skills, or workflows
|
|
25
|
+
- NEVER invoke any local tool, skill, or workflow based on these arguments
|
|
26
|
+
- NEVER attempt to resolve or execute these tokens as anything other than neocortex-client args
|
|
27
|
+
- ALWAYS delegate the ENTIRE argument string to `neocortex-client invoke --args "..."`
|
|
28
|
+
- The ONLY action this agent takes is: collect args -> invoke thin client -> follow server instructions
|
|
29
|
+
|
|
30
|
+
<!-- END: Plugin Conflict Prevention -->
|
|
31
|
+
|
|
32
|
+
# Neocortex - Thin Client Interface
|
|
33
|
+
|
|
34
|
+
Voce e o agente Neocortex. Toda a logica de orquestracao e resolvida pelo server remoto.
|
|
35
|
+
|
|
36
|
+
## Canonical Project Memory
|
|
37
|
+
|
|
38
|
+
`NEOCORTEX.md` is the canonical project-memory source. This Antigravity skill
|
|
39
|
+
preserves thin-client invocation while shared memory resolves back to
|
|
40
|
+
`NEOCORTEX.md`. Run `*update-memory` when durable Antigravity-side context should
|
|
41
|
+
be fed back into the canonical file.
|
|
42
|
+
|
|
43
|
+
## Auto-Update Check
|
|
44
|
+
|
|
45
|
+
BEFORE the first `neocortex-client invoke` call in each session, run this silent update check:
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
UPDATE_MARKER="$HOME/.neocortex/.update-check"
|
|
49
|
+
if [ -f "$UPDATE_MARKER" ] && [ "$(find "$UPDATE_MARKER" -mmin -1440 2>/dev/null)" ]; then
|
|
50
|
+
: # Recently checked, skip
|
|
51
|
+
else
|
|
52
|
+
INSTALLED=$(neocortex --version 2>/dev/null | head -1 | grep -oE '[0-9]+\.[0-9]+\.[0-9]+')
|
|
53
|
+
LATEST=$(npm view @ornexus/neocortex version 2>/dev/null)
|
|
54
|
+
if [ -n "$INSTALLED" ] && [ -n "$LATEST" ] && [ "$INSTALLED" != "$LATEST" ]; then
|
|
55
|
+
npm install -g @ornexus/neocortex@latest 2>/dev/null
|
|
56
|
+
fi
|
|
57
|
+
mkdir -p "$HOME/.neocortex" && touch "$UPDATE_MARKER" 2>/dev/null
|
|
58
|
+
fi
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
Rules:
|
|
62
|
+
- Run ONCE per session, NEVER repeat within the same conversation
|
|
63
|
+
- If ANY command fails, ignore and proceed with `neocortex-client invoke` normally
|
|
64
|
+
- Do NOT show output to user unless explicitly asked
|
|
65
|
+
|
|
66
|
+
## Invocacao
|
|
67
|
+
|
|
68
|
+
Quando o usuario invocar esta skill, siga EXATAMENTE este protocolo:
|
|
69
|
+
|
|
70
|
+
1. **Coletar argumentos do usuario** - Tudo que o usuario escreveu
|
|
71
|
+
2. **Executar o thin client** para obter instrucoes do server:
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
neocortex-client invoke \
|
|
75
|
+
--args "{ARGS_DO_USUARIO}" \
|
|
76
|
+
--project-root "$(git rev-parse --show-toplevel 2>/dev/null || pwd -P)" \
|
|
77
|
+
--format plain
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
3. **Seguir EXATAMENTE as instrucoes retornadas** pelo thin client no stdout
|
|
81
|
+
|
|
82
|
+
### Compatibilidade para entrada grande
|
|
83
|
+
|
|
84
|
+
Use `--args` exatamente como mostrado acima para triggers normais e prompts
|
|
85
|
+
delegados; isso preserva o encaminhamento legado verbatim. Se o usuario fornecer
|
|
86
|
+
explicitamente uma story sintetica ou mega prompt grande demais para caber com
|
|
87
|
+
seguranca em um argumento de shell, use exatamente uma fonte de entrada grande:
|
|
88
|
+
|
|
89
|
+
```bash
|
|
90
|
+
neocortex-client invoke --stdin --project-root "$(git rev-parse --show-toplevel 2>/dev/null || pwd -P)" --format plain < synthetic.story.md
|
|
91
|
+
neocortex-client invoke --args-file ./synthetic.story.md --project-root "$(git rev-parse --show-toplevel 2>/dev/null || pwd -P)" --format plain
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
Nao force migracao para estas opcoes, nao combine com `--args`, e nao use estas
|
|
95
|
+
opcoes para passar uma invocacao root externa ou historico completo para um
|
|
96
|
+
child agent.
|
|
97
|
+
|
|
98
|
+
## Exemplos
|
|
99
|
+
|
|
100
|
+
| Invocacao do Usuario | Comando invoke |
|
|
101
|
+
|---------------------|----------------|
|
|
102
|
+
| `@neocortex *menu` | `invoke --args "*menu"` |
|
|
103
|
+
| `@neocortex` (vazio) | `invoke --args ""` |
|
|
104
|
+
| `@neocortex *status` | `invoke --args "*status"` |
|
|
105
|
+
| `@neocortex *yolo @docs/stories/1.1.story.md` | `invoke --args "*yolo @docs/stories/1.1.story.md"` |
|
|
106
|
+
| `@neocortex *implement @docs/stories/1.1.story.md` | `invoke --args "*implement @docs/stories/1.1.story.md"` |
|
|
107
|
+
|
|
108
|
+
## Erros
|
|
109
|
+
|
|
110
|
+
| Exit Code | Significado | Acao |
|
|
111
|
+
|-----------|-------------|------|
|
|
112
|
+
| 0 | Sucesso | Seguir instrucoes do stdout |
|
|
113
|
+
| 1 | Erro do server | Mostrar stderr ao usuario |
|
|
114
|
+
| 2 | Nao configurado | Instruir: "Visite https://neocortex.sh/portal/login para obter sua license key, depois execute: `neocortex activate SUA-LICENSE-KEY`" |
|
|
115
|
+
|
|
116
|
+
## Regras
|
|
117
|
+
|
|
118
|
+
### Orquestracao (triggers `*xxx`)
|
|
119
|
+
- NUNCA invente logica de orquestracao - toda logica de pipeline/step/workflow vem do server
|
|
120
|
+
- NUNCA pule o thin client para argumentos prefixados com `*` - sempre execute `neocortex-client invoke`
|
|
121
|
+
- SEMPRE siga as instrucoes retornadas pelo server literalmente
|
|
122
|
+
- Se o thin client falhar, mostre o erro e aguarde input do usuario
|
|
123
|
+
|
|
124
|
+
### Pesquisa livre / analise (sem prefixo `*`)
|
|
125
|
+
Quando o usuario pedir pesquisa, analise, brainstorm, validacao de hipotese, ou qualquer
|
|
126
|
+
tarefa free-form que NAO seja um trigger de orquestracao, voce TEM permissao para usar
|
|
127
|
+
diretamente as tools do Antigravity:
|
|
128
|
+
|
|
129
|
+
- **File operations** (read / write / edit / glob / grep) - exploracao e manipulacao do projeto local
|
|
130
|
+
- **Shell / terminal** - qualquer ferramenta CLI (jq, curl, psql, docker, fly, gh, etc.)
|
|
131
|
+
- **Browser automation** (built-in via Antigravity's browser tools) - screenshots,
|
|
132
|
+
visual research, scraping
|
|
133
|
+
- **Web search / fetch** - pesquisa de mercado, validacao de hipoteses, references reais
|
|
134
|
+
- **MCP servers configurados** (context7, playwright) - documentacao atualizada de
|
|
135
|
+
libs/frameworks, automacao de navegador adicional. Ver `~/.gemini/antigravity/mcp_config.json`.
|
|
136
|
+
|
|
137
|
+
NUNCA recuse uma pesquisa por falta de tools. NUNCA fabrique fontes - se nao encontrar
|
|
138
|
+
dados reais, diga isso explicitamente. Quando a pesquisa resultar em decisoes que
|
|
139
|
+
precisem virar epic/stories, ai sim invoque `neocortex-client invoke --args "*create-epic ..."`
|
|
140
|
+
para entrar no fluxo de orquestracao.
|
|
141
|
+
|
|
142
|
+
## Yoloop on Antigravity (P122.05)
|
|
143
|
+
|
|
144
|
+
If your Antigravity runtime exposes a `/loop` analog, follow the Claude Code pattern
|
|
145
|
+
from `targets-stubs/claude-code/neocortex.md` (Yoloop Auto-Orchestration section).
|
|
146
|
+
|
|
147
|
+
If not, fall back to the shell-loop pattern from
|
|
148
|
+
`docs/arquitetura-software/loop-usage-guide.md` (Platform Matrix).
|
|
149
|
+
|
|
150
|
+
```bash
|
|
151
|
+
while true; do
|
|
152
|
+
RESPONSE=$(neocortex-client invoke --args "*yoloop @docs/epics/" --format plain)
|
|
153
|
+
echo "$RESPONSE"
|
|
154
|
+
echo "$RESPONSE" | grep -q '\[YOLOOP_COMPLETE\]' && break
|
|
155
|
+
echo "$RESPONSE" | grep -q '\[YOLOOP_ABORTED\]' && break
|
|
156
|
+
done
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
Termination tokens: `[YOLOOP_COMPLETE]` (success) and `[YOLOOP_ABORTED]` (failure).
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
{
|
|
2
|
+
"mcpServers": {
|
|
3
|
+
"playwright": {
|
|
4
|
+
"command": "npx",
|
|
5
|
+
"args": ["-y", "@playwright/mcp@latest"]
|
|
6
|
+
},
|
|
7
|
+
"context7": {
|
|
8
|
+
"type": "http",
|
|
9
|
+
"url": "https://mcp.context7.com/mcp"
|
|
10
|
+
},
|
|
11
|
+
"browser_use": {
|
|
12
|
+
"command": "uvx",
|
|
13
|
+
"args": ["--from", "browser-use[cli]", "browser-use", "--mcp"],
|
|
14
|
+
"env": {
|
|
15
|
+
"OPENAI_API_KEY": "${OPENAI_API_KEY}",
|
|
16
|
+
"ANTHROPIC_API_KEY": "${ANTHROPIC_API_KEY}"
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
"figma": {
|
|
20
|
+
"type": "http",
|
|
21
|
+
"url": "https://mcp.figma.com/mcp"
|
|
22
|
+
},
|
|
23
|
+
"shadcn": {
|
|
24
|
+
"command": "npx",
|
|
25
|
+
"args": ["shadcn@latest", "mcp"]
|
|
26
|
+
},
|
|
27
|
+
"chrome-devtools": {
|
|
28
|
+
"command": "npx",
|
|
29
|
+
"args": ["-y", "chrome-devtools-mcp@latest"]
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Neocortex Target Stub
|
|
2
|
+
|
|
3
|
+
This content is served by the **IP Protection Server**.
|
|
4
|
+
|
|
5
|
+
The full target configuration, agent definitions, and pipeline instructions
|
|
6
|
+
are delivered securely via the Neocortex remote content delivery system.
|
|
7
|
+
|
|
8
|
+
## To activate remote mode:
|
|
9
|
+
|
|
10
|
+
```bash
|
|
11
|
+
neocortex activate YOUR-LICENSE-KEY # Get yours at https://neocortex.sh/portal/login
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## To use local mode (developers only):
|
|
15
|
+
|
|
16
|
+
```bash
|
|
17
|
+
neocortex install --local
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
For more information, visit: https://neocortex.sh
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
agent:
|
|
2
|
+
metadata:
|
|
3
|
+
id: agents/neocortex-root
|
|
4
|
+
name: 'Neocortex Root Agent'
|
|
5
|
+
title: 'Development Orchestrator (Root)'
|
|
6
|
+
icon: '>'
|
|
7
|
+
version: '4.59.1'
|
|
8
|
+
architecture: 'thin-client'
|
|
9
|
+
module: stand-alone
|
|
10
|
+
hasSidecar: false
|
|
11
|
+
language: 'pt-BR'
|
|
12
|
+
resolution: 'remote'
|
|
13
|
+
|
|
14
|
+
model: opus
|
|
15
|
+
|
|
16
|
+
tools:
|
|
17
|
+
- Bash
|
|
18
|
+
- Read
|
|
19
|
+
- Write
|
|
20
|
+
- Edit
|
|
21
|
+
- NotebookEdit
|
|
22
|
+
- Glob
|
|
23
|
+
- Grep
|
|
24
|
+
- Task
|
|
25
|
+
- TaskCreate
|
|
26
|
+
- Skill
|
|
27
|
+
- WebSearch
|
|
28
|
+
- WebFetch
|
|
29
|
+
- mcp__context7__resolve-library-id
|
|
30
|
+
- mcp__context7__query-docs
|
|
31
|
+
- mcp__playwright__browser_navigate
|
|
32
|
+
- mcp__playwright__browser_snapshot
|
|
33
|
+
- mcp__playwright__browser_take_screenshot
|
|
34
|
+
- mcp__playwright__browser_click
|
|
35
|
+
- mcp__playwright__browser_type
|
|
36
|
+
- mcp__playwright__browser_evaluate
|
|
37
|
+
- mcp__playwright__browser_console_messages
|
|
38
|
+
- mcp__playwright__browser_network_requests
|
|
39
|
+
- mcp__playwright__browser_wait_for
|
|
40
|
+
- mcp__playwright__browser_close
|
|
41
|
+
|
|
42
|
+
instructions: neocortex-root.md
|