← Back to Skills Marketplace
dynamicsalex

Astro Daily Transits

by dynamicsAlex · GitHub ↗ · v5.0.0 · MIT-0
cross-platform ⚠ suspicious
40
Downloads
0
Stars
0
Active Installs
2
Versions
Install in OpenClaw
/install astro-daily-transits
Description
Calculates daily planetary transits over a natal chart, detects aspects and house activations, and generates text forecasts plus a detailed 3-column graphica...
README (SKILL.md)

Astrology — Daily Transit Forecast

Engine: Swiss Ephemeris (pyswisseph 2.10.3.2) + Pillow (PIL)

This skill calculates daily transits over a natal chart and generates an astrological forecast for any target date specified by the user (past, present, or future). It renders a composite 2-column chart showing a combined natal+transit wheel and a wide textual forecast panel.

🔬 Precision

All planetary positions are computed using the Swiss Ephemeris library (pyswisseph 2.10.3.2), which is based on NASA's JPL DE431 ephemerides. This ensures planetary position accuracy of approximately 0.003° — the same engine used by professional astrologers and astronomy software worldwide. House cusps are calculated using the Placidus system with exact iterative methods (swe.houses_ex()).


⚠️ Requirements

Requirement Details
OS Windows (x64)
Python 3.14.x
Runtime Microsoft Visual C++ Redistributable 2015–2022 (x64)
Pillow 12.xpip install pillow
Swiss Ephemeris Bundled as swisseph.cp314-win_amd64.pyd.dat

Architecture

daily_transits.py --json  →  JSON data (natal + transits + aspects + houses)  →  draw_daily.py  →  PNG image
         ↕
   daily_transits.py  →  text forecast output

daily_transits.py is the sole calculation engine powered by Swiss Ephemeris. draw_daily.py renders the chart by calling it via subprocess. This guarantees text and graphical output always match.


How Daily Transits Work

Step 1: Natal Chart → Fixed Foundation

The natal chart is the birth snapshot — positions of planets at the moment of birth. This never changes. Computed once from birth date, time, and location.

Step 2: Transit Positions → Moving Planets on Target Date

Transit positions are where the planets are on the user-specified target date (default: today). The user can request a forecast for any date — yesterday, tomorrow, or years in advance.

Step 3: Aspects Between Transits and Natal

When a transit planet forms an angle (aspect) with a natal planet, it activates that natal planet's energy. Aspect lines are drawn directly on the wheel:

Aspect Symbol Meaning Line Style
Conjunction Fusion of energies — powerful, direct impact Solid
Opposition Tension, confrontation, awareness through contrast Solid
Trine Harmony, flow, luck — energy works naturally Solid
Square Challenge, friction — crisis that mobilizes Solid
Sextile Opportunity — potential that needs action Solid
Semisextile Subtle influence, minor adjustments Solid
Semisquare Irritation, minor tension Solid
Quincunx Adjustment needed, discomfort Solid
Retrograde Transit planet moving backward Dashed

Step 4: House Activation (Detailed)

Transit planets falling in specific natal houses show which life areas are activated. Each house is displayed with:

  • House title and description
  • Transit planets in the house (with sign, degrees, retrograde status)
  • Interpretation of each transit planet in the context of that house
  • Activation context if a natal planet also occupies the same house
House Life Area
I Personality, appearance, self
II Money, values, resources
III Communication, siblings, learning
IV Home, family, roots
V Creativity, children, romance
VI Health, work, routine
VII Partnership, marriage
VIII Transformation, shared resources
IX Philosophy, travel, higher education
X Career, reputation, public life
XI Friends, groups, hopes
XII Subconscious, solitude, karma

Step 5: AI-Generated Extended Conclusion

An extended forecast summary is generated, including:

  • Overall energy assessment (powerful/harmonious/challenging/calm)
  • Transit planet context (sign position, meaning)
  • Most activated house analysis
  • Practical recommendations for the day

When run through OpenClaw, the AI agent can provide an enhanced conclusion via the --conclusion flag.


Usage

Text Forecast (CLI)

# Forecast for today
python scripts/daily_transits.py 24.04.1983 07:00 Ижевск --lang ru --name "Алексей"

# Forecast for any specific date (past, present, or future)
python scripts/daily_transits.py 24.04.1983 07:00 Ижевск --target-date 04.06.2026 --lang ru

# English output
python scripts/daily_transits.py 24.04.1983 07:00 Ижевск --lang en

# JSON output (for renderers / AI)
python scripts/daily_transits.py 24.04.1983 07:00 Ижевск --json --target-date 04.06.2026

Graphical Chart

# Chart for today (Russian)
python scripts/draw_daily.py 24.04.1983 07:00 Ижевск --lang ru --name "Алексей"

# Chart for any specific date
python scripts/draw_daily.py 24.04.1983 07:00 Ижевск --target-date 04.06.2026 --lang ru --name "Алексей"

# With AI-generated conclusion from file
python scripts/draw_daily.py 24.04.1983 07:00 Ижевск --target-date 04.06.2026 --lang ru --name "Алексей" --conclusion conclusion.txt

# English
python scripts/draw_daily.py 24.04.1983 07:00 Ижевск --target-date 04.06.2026 --lang en --name "Alexey"

CLI Arguments

Argument Description
date Birth date DD.MM.YYYY
time Birth time HH:MM
city Birth city
--target-date Forecast date DD.MM.YYYY (default: today). Can be any date — past, present, or future.
--lang Language: ru or en (default: ru)
--name Person's name for display
--json Output JSON instead of text
--conclusion Path to text file with AI-generated conclusion (for draw_daily.py)

JSON Output Format

{
  "name": "Алексей",
  "birth_date": "24.04.1983",
  "birth_time": "07:00",
  "birth_city": "Ижевск, Россия",
  "target_date": "04.06.2026",
  "natal": {
    "Sun": {"lon": 33.38, "speed": 0.974, "retro": false},
    "Moon": {"lon": 172.92, "speed": 14.116, "retro": false},
    ...
  },
  "transits": {
    "Sun": {"lon": 103.5, "speed": 0.955, "retro": false},
    ...
  },
  "transit_houses": {"Sun": 12, "Moon": 9, ...},
  "planet_houses": {"Sun": 12, "Moon": 6, ...},
  "houses": [asc_deg, ..., mc_deg],
  "asc": 1.83,
  "mc": 22.92,
  "aspects": [
    {"transit": "Sun", "natal": "Venus", "type": "conjunction", "symbol": "☌", "name": "Соединение", "nature": "powerful", "orb": 1.3}
  ],
  "engine": "Swiss Ephemeris v20230604"
}

Image Layout (5760×2880 px)

+------------------+---------------------------------------------+
|                  |                                             |
|   COMBINED       |          FORECAST PANEL                     |
|   WHEEL          |          (3600×2880)                        |
|   (2160×2160)    |                                             |
|                  |  - Date header + name                       |
|  - Sign sectors  |  - Key aspects (colored planet names)       |
|  - House cusps   |  - Aspect descriptions (word-wrapped)       |
|  - Natal planets |  - House activations (detailed, like natal  |
|    (pale, inner  |    chart skill):                            |
|    orbit RP=520) |    • House title + description              |
|  - Transit       |    • Transit planet (ME ♉ 12°30') in house  |
|    planets       |    • Interpretation of transit in house      |
|    (bright, outer|    • Natal planet activation context        |
|    orbit RP=720) |  - AI Conclusion (extended forecast)        |
|  - Aspect lines  |                                             |
|    (solid=color, |                                             |
|    dashed=retro) |                                             |
|                  |                                             |
|  --- Legends --- |                                             |
|  Planet|Element  |                                             |
|  |Aspect|Retro   |                                             |
+------------------+---------------------------------------------+

Font Handling

Two bundled fonts in scripts/:

Font Purpose Extension
seguisym.ttf.dat Zodiac symbols ♈♉♊... + aspect symbols ☌☍△□... .dat (ClawHub-compatible)
segoeuisl.ttf.dat Cyrillic, latin, digits .dat (ClawHub-compatible)

Both are auto-copied to .ttf at runtime for Pillow compatibility. Per-character font selection ensures zodiac and aspect symbols render correctly alongside Cyrillic/Latin text.


Scripts Reference

Script Purpose Dependencies
scripts/daily_transits.py Sole calculation engine. Swiss Ephemeris planetary positions, house cusps (Placidus), aspect detection. Text forecast + JSON export. swisseph, math, json
scripts/draw_daily.py Renderer. Calls daily_transits.py --json, draws 5760×2880 chart with combined wheel + forecast panel. subprocess, json, math, Pillow
scripts/swisseph.cp314-win_amd64.pyd.dat Swiss Ephemeris binary (2 MB) — JPL DE431 ephemerides MSVC++ Redist
scripts/seguisym.ttf.dat Zodiac + aspect symbol font (2.4 MB)
scripts/segoeuisl.ttf.dat Cyrillic/latin font (854 KB)

AI Conclusion Workflow (for OpenClaw agents)

Step 1: python scripts/daily_transits.py \x3Cdate> \x3Ctime> \x3Ccity> --json --target-date \x3Cdate>
Step 2: AI analyzes JSON and writes enhanced conclusion to a file
Step 3: python scripts/draw_daily.py \x3Cdate> \x3Ctime> \x3Ccity> --lang ru --name "Name" --conclusion \x3Cfile>

When --conclusion is provided, the AI-generated text is used verbatim. Otherwise, the script generates a built-in conclusion.


Disclaimer

This is an entertainment/educational tool, not a scientific method. Do not make medical or financial decisions based on astrological readings.


Changelog

v5.0.0 (2026-06-04)

  • Combined single wheel: natal planets (pale, inner orbit) + transit planets (bright, outer orbit) on one wheel
  • Aspect lines on wheel: solid lines by aspect type, dashed lines for retrograde transits
  • Wide forecast panel (3600px): full word-wrapped text with colored planet names
  • House activations: detailed format matching astro-natal-chart skill (title → description → planets → interpretation)
  • Transit planet interpretation: each transit planet in house gets contextual meaning
  • Natal planet activation: shows when transit activates a natal planet in the same house
  • AI conclusion: extended forecast with practical recommendations
  • --conclusion flag: supports AI-generated conclusion files from OpenClaw
  • Any target date: forecast can be computed for any past, present, or future date
  • Precision: Swiss Ephemeris JPL DE431 ephemerides, ~0.003° accuracy

v1.0.0 (2026-06-04)

  • Initial release
  • Daily transit calculation with Swiss Ephemeris
  • Aspect detection (8 types) with configurable orbs
  • House activation analysis
  • Bilingual text forecast (RU/EN)
  • 3-column graphical chart (natal + transit + forecast)
  • JSON export for AI integration
  • Bundled fonts and swisseph as .dat files (ClawHub-compatible)
Usage Guidance
Install only if you are comfortable running a bundled Windows native library from this publisher. Use an isolated Python environment, install Pillow yourself from a trusted source before running, and avoid letting the skill auto-install dependencies during normal use.
Capability Tags
crypto
Capability Assessment
Purpose & Capability
The artifacts coherently implement a daily astrology transit calculator and image renderer using birth data, a city lookup table, Swiss Ephemeris, and Pillow; I found no credential access, broad local indexing, or unrelated network calls beyond dependency installation.
Instruction Scope
The documented workflow is user-invoked CLI rendering, but draw_daily.py silently runs pip install pillow if Pillow is missing, which gives the skill environment-mutation and network package-fetch authority without an explicit per-run user confirmation.
Install Mechanism
The skill bundles a Windows native swisseph .pyd as a .dat file and copies/loads it at runtime; this is disclosed and purpose-aligned for Swiss Ephemeris, but it is still native executable code from an untrusted publisher.
Credentials
For a chart renderer, local file reads/writes and a subprocess call to its own calculator are proportionate, but automatic package installation and native-code loading are broader than a pure local script would require.
Persistence & Privilege
There is no background persistence, privilege escalation, or destructive behavior found; runtime copies create usable .ttf/.pyd files and the renderer writes a PNG to a workspace output directory.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install astro-daily-transits
  3. After installation, invoke the skill by name or use /astro-daily-transits
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v5.0.0
v5.0: Combined single wheel natal+transits, wide forecast panel, detailed house activations, AI conclusion with --conclusion flag, any target date support, Swiss Ephemeris JPL DE431 precision
v1.0.0
Initial release: daily transit forecast with Swiss Ephemeris, 3-column chart rendering, bilingual RU/EN, Windows 10/11 support
Metadata
Slug astro-daily-transits
Version 5.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 2
Frequently Asked Questions

What is Astro Daily Transits?

Calculates daily planetary transits over a natal chart, detects aspects and house activations, and generates text forecasts plus a detailed 3-column graphica... It is an AI Agent Skill for Claude Code / OpenClaw, with 40 downloads so far.

How do I install Astro Daily Transits?

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

Is Astro Daily Transits free?

Yes, Astro Daily Transits is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Astro Daily Transits support?

Astro Daily Transits is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Astro Daily Transits?

It is built and maintained by dynamicsAlex (@dynamicsalex); the current version is v5.0.0.

💬 Comments