Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions plugins/catalog.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"version": 1,
"generated_at": "2026-07-21T00:50:41.717Z",
"generated_at": "2026-08-06T09:09:00.123Z",
"count": 10163,
"plugins": [
{
Expand Down Expand Up @@ -25233,7 +25233,7 @@
},
{
"name": "notion-cli",
"checksum": "92bb1f65b65e4baf"
"checksum": "8c346fb660a44194"
},
{
"name": "nougat",
Expand Down
5 changes: 3 additions & 2 deletions plugins/notion-cli/install-guidance.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,12 @@
"binary": "notion",
"check": "which notion",
"install_steps": [
"brew install 4ier/tap/notion-cli",
"go install github.com/4ier/notion-cli@latest",
"GOBIN=$(go env GOBIN); GOPATH=$(go env GOPATH); ln -sf \"${GOBIN:-$GOPATH/bin}/notion-cli\" \"${GOBIN:-$GOPATH/bin}/notion\"",
"Verify: notion --version",
Comment on lines +7 to 8

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail

echo "== candidate files =="
git ls-files 'plugins/notion-cli/*' | sort

echo
echo "== plugin.json relevant lines =="
if [ -f plugins/notion-cli/plugin.json ]; then
  nl -ba plugins/notion-cli/plugin.json | sed -n '1,80p;30,40p;225,240p'
fi

echo
echo "== install guidance =="
if [ -f plugins/notion-cli/install-guidance.json ]; then
  nl -ba plugins/notion-cli/install-guidance.json | sed -n '1,80p'
fi

echo
echo "== quickstart relevant lines =="
if [ -f plugins/notion-cli/skills/quickstart/SKILL.md ]; then
  nl -ba plugins/notion-cli/skills/quickstart/SKILL.md | sed -n '50,75p'
fi

echo
echo "== command/devenv references to notion binaries and PATH =="
rg -n 'which notion|notion auth|notion-cli|notion"|NOTION_CLI|NOTION' plugins/notion-cli -S

Repository: javimosch/supercli

Length of output: 400


🏁 Script executed:

#!/bin/bash
set -euo pipefail

echo "== plugin.json relevant lines =="
if [ -f plugins/notion-cli/plugin.json ]; then
  awk '{printf "%6d\t%s\n", NR, $0}' plugins/notion-cli/plugin.json | sed -n '1,80p;30,40p;225,240p'
else
  echo "missing plugins/notion-cli/plugin.json"
fi

echo
echo "== install guidance =="
if [ -f plugins/notion-cli/install-guidance.json ]; then
  awk '{printf "%6d\t%s\n", NR, $0}' plugins/notion-cli/install-guidance.json | sed -n '1,80p'
else
  echo "missing plugins/notion-cli/install-guidance.json"
fi

echo
echo "== quickstart relevant lines =="
if [ -f plugins/notion-cli/skills/quickstart/SKILL.md ]; then
  awk '{printf "%6d\t%s\n", NR, $0}' plugins/notion-cli/skills/quickstart/SKILL.md | sed -n '50,75p'
else
  echo "missing plugins/notion-cli/skills/quickstart/SKILL.md"
fi

echo
echo "== command/devenv references to notion binaries and PATH =="
rg -n 'which notion|notion auth|notion-cli|notion"|NOTION_CLI|NOTION' plugins/notion-cli -S

echo
echo "== metadata references =="
if [ -f plugins/notion-cli/meta.json ]; then
  awk '{printf "%6d\t%s\n", NR, $0}' plugins/notion-cli/meta.json | sed -n '1,80p;225,245p'
fi

Repository: javimosch/supercli

Length of output: 14511


🌐 Web query:

Go install command GOBIN default path $GOPATH/bin documentation

💡 Result:

The go install command installs executable binaries into the directory specified by the GOBIN environment variable [1][2]. If GOBIN is not explicitly set, it defaults to the bin subdirectory of the primary GOPATH [1][2]. If GOPATH itself is not set, the default GOPATH is $HOME/go on Unix systems (such as Linux and macOS) and %USERPROFILE%\go on Windows [2][3]. Consequently, when neither GOBIN nor GOPATH is explicitly configured, the default installation path is $HOME/go/bin or %USERPROFILE%\go\bin, respectively [1][2]. You can verify the current effective location for your environment by running the command go env GOBIN or go env GOPATH [2][4]. To change the installation directory, you can set the GOBIN environment variable using the command go env -w GOBIN=/your/custom/path [2][4].

Citations:


🌐 Web query:

SuperCLI plugin binary check which command binary check mechanism

💡 Result:

The binary check mechanism for SuperCLI plugins depends on the specific project implementation, as multiple tools use this name. For the javimosch/supercli ecosystem, plugin binary requirements are handled via manifest files and diagnostics [1][2]: 1. Manifest-Driven Configuration: Plugins bundle a plugin.json manifest that includes metadata and dependency requirements [2][3]. Developers can define specific binary and environment variable checks within this configuration to ensure that required external dependencies are present on the host system [1]. 2. Diagnostic Checks: When a command is executed, SuperCLI provides diagnostic mechanisms to assist users when dependencies or binaries are missing [1][2]. If a required binary (such as a Zig-based plugin component) is not found, the system often provides feedback and may suggest alternatives, such as using a Node.js fallback runtime that shares the same plugin state [2][3]. 3. Sync and Validation: During server-client synchronization (supercli sync), the system validates plugin payloads via checksums and signature checks to ensure integrity [4]. For the snakex21/SuperCli implementation (a Go-based AI coding agent), the binary check mechanism is integrated into the core diagnostic system [5]: 1. Doctor Command: The --doctor flag (or /doctor in the TUI) executes a suite of diagnostics that explicitly verify binary paths, environment configurations, and the availability of essential tools (such as git or ripgrep) [5]. 2. Runtime Startup Checks: The binary performs automatic startup checks to ensure that required directories (like the data directory) are writable, providing clear error instructions if the environment is incorrectly configured [5]. Because SuperCLI is a name shared by different projects, you should verify which implementation you are using by checking the repository or documentation provided in your specific environment [2][5].

Citations:


Make the Go-installed notion binary discoverable through PATH.

The Go install path is not always on PATH, but plugin.json checks and commands rely on notion. If the symlink is placed under ${GOBIN:-$GOPATH/bin}, set PATH or install into an existing PATH directory. Apply this to plugins/notion-cli/install-guidance.json, plugins/notion-cli/plugin.json, and plugins/notion-cli/skills/quickstart/SKILL.md.

📍 Affects 3 files
  • plugins/notion-cli/install-guidance.json#L7-L8 (this comment)
  • plugins/notion-cli/plugin.json#L14-L15
  • plugins/notion-cli/plugin.json#L34-L34
  • plugins/notion-cli/plugin.json#L234-L234
  • plugins/notion-cli/skills/quickstart/SKILL.md#L61-L66
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@plugins/notion-cli/install-guidance.json` around lines 7 - 8, Make the
Go-installed notion binary discoverable on PATH across all affected sites: in
plugins/notion-cli/install-guidance.json, update the installation guidance and
verification command; in plugins/notion-cli/plugin.json at lines 14-15, 34, and
234, ensure checks and commands use a PATH-visible binary; and in
plugins/notion-cli/skills/quickstart/SKILL.md lines 61-66, document the same
PATH setup. Either add the Go bin directory to PATH or place the symlink in an
existing PATH directory, keeping all notion invocations consistent.

"Authenticate: echo 'ntn_xxxxx' | notion auth login --with-token",
"Alternative auth: export NOTION_TOKEN=ntn_xxxxx",
"supercli plugins install ./plugins/notion-cli --on-conflict replace --json"
],
"note": "Also available as Go binary from GitHub Releases: https://github.com/4ier/notion-cli/releases. npm: npm install -g @4ier/notion-cli. Token stored in ~/.config/notion-cli/config.json (mode 0600). Auto-detects JSON output when piped to another command."
"note": "Primary install is go install github.com/4ier/notion-cli@latest, which builds a binary named notion-cli. Link or rename it to notion before the Verify step. Also available via Homebrew (brew install 4ier/tap/notion-cli), npm (npm install -g @4ier/notion-cli), GitHub Releases (https://github.com/4ier/notion-cli/releases), or Scoop on Windows. Token stored in ~/.config/notion-cli/config.json (mode 0600). Auto-detects JSON output when piped to another command."
}
7 changes: 4 additions & 3 deletions plugins/notion-cli/plugin.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@
"binary": "notion",
"check": "which notion",
"install_steps": [
"brew install 4ier/tap/notion-cli",
"go install github.com/4ier/notion-cli@latest",
"GOBIN=$(go env GOBIN); GOPATH=$(go env GOPATH); ln -sf \"${GOBIN:-$GOPATH/bin}/notion-cli\" \"${GOBIN:-$GOPATH/bin}/notion\"",
"Verify: notion --version",
"Authenticate: echo 'ntn_xxxxx' | notion auth login --with-token",
"supercli plugins install ./plugins/notion-cli --on-conflict replace --json"
Expand All @@ -30,7 +31,7 @@
"adapterConfig": {
"command": "notion",
"baseArgs": ["--version"],
"missingDependencyHelp": "Install notion-cli: brew install 4ier/tap/notion-cli"
"missingDependencyHelp": "Install notion-cli: go install github.com/4ier/notion-cli@latest (the binary will be named notion-cli; symlink or rename it to notion) or brew install 4ier/tap/notion-cli"
},
"args": []
},
Expand Down Expand Up @@ -230,7 +231,7 @@
"adapterConfig": {
"command": "notion",
"passthrough": true,
"missingDependencyHelp": "Install notion-cli: brew install 4ier/tap/notion-cli. Authenticate: echo 'ntn_xxxx' | notion auth login --with-token"
"missingDependencyHelp": "Install notion-cli: go install github.com/4ier/notion-cli@latest (the binary will be named notion-cli; symlink or rename it to notion) or brew install 4ier/tap/notion-cli. Authenticate: echo 'ntn_xxxx' | notion auth login --with-token"
},
"args": []
}
Expand Down
17 changes: 16 additions & 1 deletion plugins/notion-cli/skills/quickstart/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,11 +58,26 @@ export NOTION_TOKEN=ntn_xxxxx

## Installation

The recommended install is with `go install`. The resulting binary is named `notion-cli`, so symlink or rename it to `notion` before running any commands:

```bash
go install github.com/4ier/notion-cli@latest
GOBIN=$(go env GOBIN); GOPATH=$(go env GOPATH); ln -sf "${GOBIN:-$GOPATH/bin}/notion-cli" "${GOBIN:-$GOPATH/bin}/notion"
```

Or install with Homebrew:

```bash
brew install 4ier/tap/notion-cli
```

Or download binary from [GitHub Releases](https://github.com/4ier/notion-cli/releases).
Or install with npm:

```bash
npm install -g @4ier/notion-cli
```

Or download a binary from [GitHub Releases](https://github.com/4ier/notion-cli/releases).
Comment on lines +68 to +80

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Document the Scoop installation option.

The PR objectives and plugins/notion-cli/install-guidance.json list Scoop, but this quickstart lists only Homebrew, npm, and GitHub Releases. Add an actionable Scoop installation command for Windows, or remove the option from the other guidance.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@plugins/notion-cli/skills/quickstart/SKILL.md` around lines 68 - 80, Update
the installation options in the quickstart documentation to include an
actionable Windows Scoop command, keeping it consistent with the Scoop option
referenced by the PR objectives and install-guidance.json. Preserve the existing
Homebrew, npm, and GitHub Releases instructions.


## Key Features
- **Agent-friendly**: JSON output auto-detected when piped, schema-aware, URL or ID support
Expand Down
Loading