- Enabled native execution and nativeSkills in OpenClaw config - Installed and linked core CLI dependencies (things3-cli, grizzly, remindctl, op, etc.) - Deployed macOS-specific skills (Notes, Reminders, Things, TTS, Mission Control) - Hardened node startup script with optimized PATH and daemon configuration - Finalized environment for secure autonomous operation
1.0 KiB
1.0 KiB
Spec: Weather Fetcher CLI
Objective: A Python CLI tool that fetches current weather for a city using a public API.
User Stories
US1: Fetch current weather [P1]
As a CLI user, I want to fetch the current temperature and description for a city.
- Input: City name (string).
- Output: JSON or formatted table with "Temperature (C)" and "Condition".
US2: API Key Management [P1]
As an administrator, I want the tool to read the API key from an environment variable WEATHER_API_KEY.
- Validation: Fail with a clear error if the variable is missing.
US3: Units selection [P2]
As a international user, I want to choose between Metric (Celsius) and Imperial (Fahrenheit) via a flag.
- Acceptance Criteria:
--units metricor--units imperial.
Non-Functional Requirements
- Performance: Response within 2 seconds.
- Reliability: Handle invalid city names gracefully.
Success Criteria
- Tool returns weather for "Worms, DE".
- Tool fails gracefully for "NonExistentCity".
- All tests pass with 80% coverage.