← Back to Skills Marketplace
jeffaf

Countries

by jeffaf · GitHub ↗ · v1.0.0
cross-platform ⚠ suspicious
1569
Downloads
0
Stars
2
Active Installs
1
Versions
Install in OpenClaw
/install countries
Description
CLI for AI agents to lookup country info for their humans. Uses REST Countries API. No auth required.
README (SKILL.md)

Countries Lookup

CLI for AI agents to lookup country info for their humans. "What's the capital of Mongolia?" — now your agent can answer.

Uses REST Countries API (v3.1). No account or API key needed.

Usage

"Tell me about Japan"
"What countries are in South America?"
"Which country has Tokyo as capital?"
"Info on country code DE"

Commands

Action Command
Search by name countries search "query"
Get details countries info \x3Ccode>
List by region countries region \x3Cregion>
Search by capital countries capital "city"
List all countries all

Examples

countries search "united states"   # Find country by name
countries info US                  # Get full details by alpha-2 code
countries info USA                 # Also works with alpha-3
countries region europe            # All European countries
countries capital tokyo            # Find country by capital
countries all                      # List all countries (sorted)

Regions

Valid regions: africa, americas, asia, europe, oceania

Output

Search/list output:

[US] United States — Washington D.C., Americas, Pop: 331M, 🇺🇸

Info output:

🌍 Japan
   Official: Japan
   Code: JP / JPN / 392
   Capital: Tokyo
   Region: Asia — Eastern Asia
   Population: 125.8M
   Area: 377930 km²
   Languages: Japanese
   Currencies: Japanese yen (JPY)
   Timezones: UTC+09:00
   Borders: None (island/isolated)
   Driving: left side
   Flag: 🇯🇵

🗺️ Map: https://goo.gl/maps/...

Notes

  • Uses REST Countries API v3.1 (restcountries.com)
  • No authentication or rate limits
  • Country codes: alpha-2 (US), alpha-3 (USA), or numeric (840)
  • Population formatted with K/M/B suffixes
  • All regions lowercase

Agent Implementation Notes

Script location: {skill_folder}/countries (wrapper to scripts/countries)

When user asks about countries:

  1. Run ./countries search "name" to find country code
  2. Run ./countries info \x3Ccode> for full details
  3. Run ./countries region \x3Cregion> for regional lists
  4. Run ./countries capital "city" to find by capital

Common patterns:

  • "What country is X in?" → search by name
  • "Tell me about X" → search, then info with code
  • "Countries in Europe" → region europe
  • "Capital of X" → info with code, check capital field
  • "What country has capital X?" → capital search

Don't use for: Historical countries, disputed territories, non-sovereign regions.

Usage Guidance
This package is documentation-only: it describes a CLI wrapper and shows how to use it, but does not include the wrapper script(s). To make the skill work you would need to clone or otherwise fetch the GitHub repo (https://github.com/jeffaf/countries-skill.git) and install/run its scripts. Before doing so: (1) inspect the repository contents and the specific wrapper/script files for unexpected network calls, credential access, or obfuscated code; (2) prefer running the documented curl/jq commands yourself rather than executing an unfamiliar wrapper; (3) ensure required binaries (bash, curl, jq, bc) are present; and (4) be cautious about blindly running install or setup commands from the repo. The mismatch between SKILL.md instructions and the packaged files is likely a packaging oversight, but it does require fetching external code — treat that as a security decision point.
Capability Analysis
Type: OpenClaw Skill Name: countries Version: 1.0.0 The `SKILL.md` file instructs the AI agent to execute shell commands (`./countries search "name"`, `./countries info "code"`, etc.) by directly embedding user-provided input into the command string. This design creates a significant command injection vulnerability, as a malicious user could craft input containing shell metacharacters (e.g., `"query"; rm -rf /`) that the agent would then execute. Additionally, the skill requires `bash` and `curl`, granting it powerful shell execution and network capabilities, which exacerbates the risk of this command injection vector. While there is no clear evidence of intentional malicious behavior like data exfiltration or persistence from the skill developer, the method of command execution is inherently risky.
Capability Assessment
Purpose & Capability
Name/description (country info via REST Countries) aligns with required binaries (bash, curl, jq, bc) which are appropriate for a shell wrapper that queries a public REST API and formats JSON/numbers.
Instruction Scope
SKILL.md repeatedly instructs the agent to run a local wrapper (./countries -> scripts/countries) and shows CLI commands like `countries search ...`, but the packaged skill contains only README.md and SKILL.md — no executable or scripts are included. As packaged, the instructions reference files that don't exist, so the agent cannot follow them without fetching external code. The instructions do not ask for unrelated files, env vars, or credentials.
Install Mechanism
There is no install spec in the package (instruction-only). README suggests cloning https://github.com/jeffaf/countries-skill.git into a skills directory or symlinking a wrapper into PATH. That means to actually get a working CLI you must fetch and run code from a third-party GitHub repo — fetch execution is external to this package and should be inspected before running.
Credentials
No environment variables, credentials, or config paths are requested. This is proportional to the stated purpose (public REST API with no auth).
Persistence & Privilege
Skill is not always-enabled, and does not request persistent privileges or modify other skills. Autonomous invocation is enabled by default but not a special concern here on its own.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install countries
  3. After installation, invoke the skill by name or use /countries
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
- Initial release of the "countries" CLI skill (v1.0.0). - Provides country information using the REST Countries API v3.1. - Supports searching by country name, code, capital city, and region. - Lists countries by region and displays formatted summaries and detailed info. - No authentication required; works using `bash`, `curl`, `jq`, and `bc`. - Includes command-line usage examples and clear output formats.
Metadata
Slug countries
Version 1.0.0
License
All-time Installs 2
Active Installs 2
Total Versions 1
Frequently Asked Questions

What is Countries?

CLI for AI agents to lookup country info for their humans. Uses REST Countries API. No auth required. It is an AI Agent Skill for Claude Code / OpenClaw, with 1569 downloads so far.

How do I install Countries?

Run "/install countries" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Countries free?

Yes, Countries is completely free (open-source). You can download, install and use it at no cost.

Which platforms does Countries support?

Countries is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Countries?

It is built and maintained by jeffaf (@jeffaf); the current version is v1.0.0.

💬 Comments