← 返回 Skills 市场
serslon

Astrology API

作者 Sergii Solonyna · GitHub ↗ · v1.0.2
cross-platform ⚠ suspicious
541
总下载
1
收藏
2
当前安装
3
版本数
在 OpenClaw 中安装
/install astroapi-skill
功能描述
Astrology API: generate natal charts, synastry, composite, transits, solar/lunar returns, progressions, directions, planetary positions, house cusps, aspects...
使用说明 (SKILL.md)

Astrology API Skill

When to Use

Use this skill when the user asks about:

  • Birth charts, natal charts, horoscopes
  • Zodiac compatibility, synastry, relationship analysis
  • Planetary positions, transits, aspects
  • Moon phases, lunar metrics, void of course
  • Solar/lunar returns, progressions, directions
  • Tarot card readings, spreads, interpretations
  • Numerology (core numbers, compatibility, comprehensive)
  • Vedic astrology (kundli, doshas, dashas, panchang)
  • Chinese astrology (bazi, ming gua, feng shui)
  • Human design (bodygraph, type, channels, gates)
  • Kabbalah (tree of life, birth angels, gematria)
  • Astrocartography (relocation, power zones, lines)
  • Fixed stars (positions, conjunctions)
  • Eclipses (upcoming, natal impact)
  • Palmistry (palm analysis, reading)
  • Daily/weekly/monthly/yearly horoscopes
  • Career, health, spiritual, psychological analysis
  • Chart rendering (SVG, PNG images)

Prerequisites

Before making any API call, verify:

  1. $ASTROLOGY_API_KEY environment variable is set
  2. curl is available on PATH

If the API key is missing, ask the user to set it:

export ASTROLOGY_API_KEY="your_token_here"

How It Works

  1. Gather data from the user depending on the request type:

    • For natal/personal: name, birth date (year, month, day), birth time (hour, minute), birth city + country code (2-letter ISO)
    • For synastry/compatibility: birth data for TWO people
    • For transits: natal data + transit date/time
    • For horoscopes by sign: just the zodiac sign name
    • For tarot: question or spread type
    • For numerology: full name + birth date
  2. Call the API using {baseDir}/scripts/astro-api.sh:

    bash {baseDir}/scripts/astro-api.sh POST /api/v3/charts/natal '{ ... }'
    
  3. Present results in a human-friendly format, highlighting key findings.

API Call Patterns

Natal Chart (most common)

bash {baseDir}/scripts/astro-api.sh POST /api/v3/charts/natal '{
  "subject": {
    "name": "John",
    "year": 1990, "month": 3, "day": 15,
    "hour": 14, "minute": 30, "second": 0,
    "city": "New York", "country_code": "US"
  },
  "options": {
    "house_system": "P",
    "zodiac_type": "Tropic",
    "language": "EN"
  }
}'

Synastry (compatibility)

bash {baseDir}/scripts/astro-api.sh POST /api/v3/charts/synastry '{
  "subject": {
    "name": "Person A",
    "year": 1990, "month": 3, "day": 15,
    "hour": 14, "minute": 30, "second": 0,
    "city": "New York", "country_code": "US"
  },
  "partner": {
    "name": "Person B",
    "year": 1992, "month": 7, "day": 20,
    "hour": 9, "minute": 0, "second": 0,
    "city": "London", "country_code": "GB"
  },
  "options": {"house_system": "P", "zodiac_type": "Tropic", "language": "EN"}
}'

Transit Snapshot

bash {baseDir}/scripts/astro-api.sh POST /api/v3/charts/transit '{
  "subject": {
    "name": "John",
    "year": 1990, "month": 3, "day": 15,
    "hour": 14, "minute": 30, "second": 0,
    "city": "New York", "country_code": "US"
  },
  "transit": {
    "year": 2026, "month": 2, "day": 12,
    "hour": 12, "minute": 0, "second": 0,
    "city": "New York", "country_code": "US"
  },
  "options": {"house_system": "P", "zodiac_type": "Tropic", "language": "EN"}
}'

Current Sky Data (no parameters needed)

bash {baseDir}/scripts/astro-api.sh GET /api/v3/data/now

Planetary Positions

bash {baseDir}/scripts/astro-api.sh POST /api/v3/data/positions '{
  "subject": {
    "name": "John",
    "year": 1990, "month": 3, "day": 15,
    "hour": 14, "minute": 30, "second": 0,
    "city": "New York", "country_code": "US"
  },
  "options": {"house_system": "P", "zodiac_type": "Tropic"}
}'

Lunar Metrics

bash {baseDir}/scripts/astro-api.sh POST /api/v3/data/lunar-metrics '{
  "subject": {
    "name": "now",
    "year": 2026, "month": 2, "day": 12,
    "hour": 12, "minute": 0, "second": 0,
    "city": "New York", "country_code": "US"
  }
}'

Daily Horoscope by Sign

bash {baseDir}/scripts/astro-api.sh POST /api/v3/horoscope/sign/daily '{
  "sign": "aries",
  "language": "EN"
}'

Personal Daily Horoscope

bash {baseDir}/scripts/astro-api.sh POST /api/v3/horoscope/personal/daily '{
  "subject": {
    "name": "John",
    "year": 1990, "month": 3, "day": 15,
    "hour": 14, "minute": 30, "second": 0,
    "city": "New York", "country_code": "US"
  },
  "language": "EN"
}'

Natal Analysis Report (AI-generated interpretation)

bash {baseDir}/scripts/astro-api.sh POST /api/v3/analysis/natal-report '{
  "subject": {
    "name": "John",
    "year": 1990, "month": 3, "day": 15,
    "hour": 14, "minute": 30, "second": 0,
    "city": "New York", "country_code": "US"
  },
  "options": {"house_system": "P", "zodiac_type": "Tropic", "language": "EN"}
}'

Render Chart as SVG

bash {baseDir}/scripts/astro-api.sh POST /api/v3/svg/natal '{
  "subject": {
    "name": "John",
    "year": 1990, "month": 3, "day": 15,
    "hour": 14, "minute": 30, "second": 0,
    "city": "New York", "country_code": "US"
  },
  "options": {"house_system": "P", "zodiac_type": "Tropic"}
}'

Tarot Card Draw

bash {baseDir}/scripts/astro-api.sh POST /api/v3/tarot/cards/draw '{
  "count": 3
}'

Numerology Core Numbers

bash {baseDir}/scripts/astro-api.sh POST /api/v3/numerology/core-numbers '{
  "full_name": "John Smith",
  "birth_date": "1990-03-15"
}'

Full endpoint reference: Read {baseDir}/references/api-endpoints.md for all 190+ endpoints with detailed parameters.

Default Options

When the user doesn't specify preferences, use these defaults:

  • House system: P (Placidus) — most common in Western astrology
  • Zodiac type: Tropic (Tropical) — Western standard
  • Language: EN (English) — override based on user's language
  • Tradition: universal — broadest coverage

Output Format

When presenting results to the user:

  1. Start with the highlights: Sun sign, Moon sign, Ascendant (Rising)
  2. Use plain language — translate astrological jargon
  3. Format positions as tables when showing multiple planets
  4. Highlight notable aspects (conjunctions, oppositions, squares, trines)
  5. For compatibility: lead with the overall score/summary
  6. For horoscopes: present the text naturally, don't dump raw JSON
  7. For chart images (SVG/render): save to a file and inform the user

Edge Cases

  • Birth time unknown: Use noon (12:00) and note that house positions and Moon degree may be less accurate
  • City not found: Ask for latitude/longitude instead. Use latitude and longitude fields instead of city/country_code
  • API errors (400/422): Parse the error message and explain to the user what's wrong (e.g., invalid date, missing field)
  • Large responses: For analysis reports, summarize the key points rather than showing everything
  • Language support: The API supports EN, RU, FR, DE, ES, IT, PT, and more — match the user's language when possible
安全使用建议
This skill is coherent: it calls a public astrology API using curl and an ASTROLOGY_API_KEY. Before installing, confirm you trust the third-party service (https://api.astrology-api.io) and obtain the API key from its dashboard. Be aware the skill will send sensitive personal data (birth date/time, location, names, and possibly partner data) to the remote API — review the service's privacy policy if you are concerned about retention or sharing. Protect the ASTROLOGY_API_KEY like any secret (do not paste it into public logs), and consider rotating the key if it may have been exposed. Note: you can override the base URL with ASTROLOGY_API_URL, though SKILL.md does not list this as required; only use that override if you control the replacement endpoint.
功能分析
Type: OpenClaw Skill Name: astroapi-skill Version: 1.0.2 The `scripts/astro-api.sh` script is vulnerable to URL injection via the `$ENDPOINT` argument. The script directly concatenates `$ENDPOINT` into the `curl` URL without validating that it is a relative path. An attacker could craft a prompt to the AI agent to pass a full URL (e.g., `http://attacker.com/exfil`) as the `ENDPOINT` argument, causing the `curl` command to send the `ASTROLOGY_API_KEY` to an arbitrary external server. This constitutes a critical credential exfiltration vulnerability, exploitable via prompt injection against the AI agent.
能力评估
Purpose & Capability
Name/description, README, SKILL.md, and the included curl wrapper all consistently target the Astrology API (https://api.astrology-api.io). Requiring curl and ASTROLOGY_API_KEY is proportionate and expected for a REST API integration.
Instruction Scope
Runtime instructions ask the agent to collect personal birth data (name, birth date/time, location) — this is necessary for astrology functionality but is sensitive personal data. The SKILL.md and scripts instruct calls only to the declared API endpoints; they do not read other system files. One minor mismatch: the script supports an optional ASTROLOGY_API_URL environment variable (to override base URL) but SKILL.md frontmatter only declares ASTROLOGY_API_KEY.
Install Mechanism
No install/spec fetches arbitrary code. This is an instruction-only skill with a small, non-obfuscated bash script wrapper that calls curl; no remote downloads or extracted archives are present in the bundle.
Credentials
Only ASTROLOGY_API_KEY is required (primary credential). That single credential is appropriate for authenticating to the third‑party API. The script optionally reads ASTROLOGY_API_URL (not declared as required) — harmless but worth documenting. The skill will transmit user-provided PII (birth data) to the API endpoint.
Persistence & Privilege
The skill does not request always:true, does not modify other skills, and has no install behavior that writes privileged system/config files. Agent autonomous invocation is enabled by default (normal); this skill does not add elevated persistence.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install astroapi-skill
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /astroapi-skill 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.2
Initial release
v1.0.1
Initial release
v1.0.0
Initial release
元数据
Slug astroapi-skill
版本 1.0.2
许可证
累计安装 2
当前安装数 2
历史版本数 3
常见问题

Astrology API 是什么?

Astrology API: generate natal charts, synastry, composite, transits, solar/lunar returns, progressions, directions, planetary positions, house cusps, aspects... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 541 次。

如何安装 Astrology API?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install astroapi-skill」即可一键安装,无需额外配置。

Astrology API 是免费的吗?

是的,Astrology API 完全免费(开源免费),可自由下载、安装和使用。

Astrology API 支持哪些平台?

Astrology API 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 Astrology API?

由 Sergii Solonyna(@serslon)开发并维护,当前版本 v1.0.2。

💬 留言讨论