Catalog PyPI
PACKAGE EXPLORERView in registry

aa-hostile-intel

PyPI

hostile Intel for Alliance Auth (GitHub Version)

allianceauthhostile
Versions collected1
Direct dependencies3From release 0.0.7
Last observed20 Oct, 16:55 UTC

README

Version 0.0.7 documentation

AA Hostile Intel

PyPI Python Django Alliance Auth License: GPL v3

AA Hostile Intel is an operational tactical intelligence, non-ESI structure tracking, fitting inspection, and combat threat analysis platform for Alliance Auth.

Designed specifically to eliminate cognitive friction and decision latency during live operations, it empowers fleet commanders (FCs), scouts, and intelligence officers to track hostile infrastructure, parse non-ESI fittings, calculate combat drop risks, monitor sovereignty vulnerability windows, and profile hostile alliance timezones.


Key Features

  • ⚡ Tactical Command Center Dashboard:

    • Universal Fast-Triage Hero Deck: Omnisearch bar for instant client-side queries across pilots, systems, alliances, and timers; direct smart clipboard parser dropzone; and a Home Staging Anchor filter calculating live jump routing across all cards.
    • Temporal Urgency KPI Deck: Time-sensitive operational metrics (Timers <6h, Timers <24h, Active Sov Campaigns, Active Gate Camps, 7-Day Hotspots, Tracked Supers & Cynos).
    • Two-Column Operational Layout: Separates immediate tactical threats (urgent timers with live ticking countdowns and 1-click FC Discord pings, active gate camps with time-decay status badges, recent threat scans) from strategic landscape monitoring (hotspot activity rankings, active sovereignty battles, hostile staging hubs, and fleet doctrines).
    • Real-Time Live Intelligence Feed: Unified chronological ticker tracking sitreps, structure discoveries, timer updates, and threat scans with 60-second background auto-synchronization.
  • 🛰️ Non-ESI Structure & Fitting Ingestion:

    • Smart Multi-Format Parser: Automatically classifies D-Scans, structure show-info copy-pastes, and EFT fitting blocks.
    • SDE Asset Identification: Resolves structure types, celestial locations, owner tickers, quantum core statuses, and fitted modules via eve_sde.
    • Interactive Module Inspection: Corptools-inspired High, Medium, Low, Rig, and Service slot modals with official CCP asset icons and 1-click Copy EFT to Clipboard export for Pyfa and EVE Online.
  • ⚔️ Sovereignty Campaign & Contest Timers:

    • Dynamic Real-Time Polling: Tracks active and upcoming ADM sovereignty campaigns with 60-second change detection polling and live DOM updates.
    • Contest Score Donuts: Visual 60/40 circular donut charts, ongoing contest indicators, and defender/attacker score tracking.
    • Staging Proximity Routing: Real-time gate jump counts and jump drive light-year calculations from your home staging base.
  • ⏱️ Structure Reinforcement Timers Board:

    • Dedicated timer board tracking hostile armor and hull vulnerability windows.
    • Live client-side ticking countdowns with multi-layer ambient tactical pulse glows for imminent timers.
    • One-click Fleet Commander (FC) Discord / broadcast ping generator formatted with target system, structure type, and time remaining.
  • 🎯 Local Threat Scanner & Drop Risk Engine:

    • Asynchronous Pilot Intelligence Streaming: Non-blocking local chat paste ingestion that eliminates HTTP gateway timeouts by streaming pilot corporation, alliance, top flown ships, and loss data in the background.
    • Drop Probability Algorithms: Evaluates pilot combat histories, cyno loss records, and zKillboard tags to estimate real-time Black Ops (Blops) and Capital drop risks.
    • Grid Anchor & Ship Composition: Combines Local chat rosters with D-Scan items to classify grid composition and identify hostile FCs.
  • 📡 Tactical Sitreps & Gate Camp Ingestion:

    • Time Seen & Freshness Tracking: UTC timestamps with 1-click "Now" and relative time offsets (-15m, -30m, -1h, -2h, -4h).
    • Interactive Threat Classification Tags: Preselectable pills (Gate Camp, Bubbles on Gate, Smartbomb Trap, Blops Hunter, Capital Fleet, Cyno Beacon, Roving Gang) with on-the-fly custom tag creation.
    • Integrated Local & D-Scan Scanner: Submitting camp sitreps allows optional Local chat and D-Scan pastes, generating linked LocalThreatScan records and auto-applying threat tags.
    • 1-Click FC Ping Generator: Instant Discord-formatted broadcast pings detailing system, freshness, threat level, bubble status, and linked threat analysis.
  • 👤 Hostile Pilot Dossiers Registry:

    • Comprehensive database tracking hostile cyno alts, supercarrier/titan pilots, fleet commanders, and scouts.
    • Searchable across character names, corporations, alliances, alt associations, notes, and behavioral tags with multi-role category filtering.
  • 🏛️ Alliances, Corporations & Coalitions Profiling:

    • Automated ESI and zKillboard tracking of hostile coalition hierarchies, sovereignty footprints, and member counts.
    • Primary operational timezone profiling (USTZ, EUTZ, AUTZ) derived from vulnerability distributions and 7x24 activity heatmaps.
    • Formup potential estimations for subcap, capital, and supercapital fleets.
  • 🚀 Hostile Staging Hubs & Fleet Doctrines:

    • Track forward deployment bases, lowsec staging hubs, and nullsec citadels outside target sovereignty.
    • Catalog fleet doctrines (Mainline Fleet, Skirmish / HACs, Capital / Super, Home Defense, Roaming) with example fittings, zKillboard killmail references, and interactive slot inspection.
  • 🔒 Tiered Moderation & Audit Logging:

    • Role-based access control with granular permissions (basic_access, manage_intel, officer_access).
    • Immutable audit logs recording all operator creations, edits, and deletions.

Installation

1. Install Package

Install the package into your Alliance Auth virtual environment:

pip install aa-hostile-intel

2. Configure Alliance Auth Settings

In your local.py settings file, add hostile to INSTALLED_APPS:

INSTALLED_APPS += [
    "hostile",
]

3. Configure Periodic Celery Tasks

Add the periodic tasks to CELERYBEAT_SCHEDULE in local.py:

from celery.schedules import crontab

# Periodic ESI Sovereignty & Structure Map Synchronization (Every 2 Hours)
CELERYBEAT_SCHEDULE["hostile_update_sovereignty_intelligence"] = {
    "task": "hostile.tasks.update_sovereignty_intelligence",
    "schedule": crontab(minute="0", hour="*/2"),
}

# Periodic Active Sovereignty Campaign Synchronization (Every 15 Minutes)
CELERYBEAT_SCHEDULE["hostile_update_sovereignty_campaigns"] = {
    "task": "hostile.tasks.update_sovereignty_campaigns",
    "schedule": crontab(minute="*/15"),
}

# Periodic zKillboard Entity Statistics & Member Counts (Every 6 Hours)
CELERYBEAT_SCHEDULE["hostile_update_all_zkill_stats"] = {
    "task": "hostile.tasks.update_all_zkill_stats",
    "schedule": crontab(minute="30", hour="*/6"),
}

4. Run Migrations & Collect Static Files

python manage.py migrate
python manage.py collectstatic --noinput

5. Restart Services

Restart your Alliance Auth supervisor or systemd services:

supervisorctl restart all

Configuration Settings

You can customize app behavior by adding the following optional settings to your local.py:

SettingTypeDefaultDescription
HOSTILE_SOV_SYNC_MINUTESint60Interval (in minutes) for caching ESI sovereignty map and structure vulnerability syncs.
HOSTILE_CAMPAIGN_SYNC_MINUTESint15Interval (in minutes) for caching active ESI sovereignty campaign syncs.
HOSTILE_AUTO_VERIFY_OFFICER_POSTSboolTrueAutomatically marks system observations submitted by users with hostile.manage_intel as verified.
HOSTILE_MAX_ACTIVE_OBSERVATION_DAYSint7Number of days before unverified or inactive system observations are pruned from active feeds.
HOSTILE_ZKILL_ENABLEDboolTrueEnables automated background zKillboard statistics and pilot intelligence queries.
HOSTILE_ZKILL_SYNC_HOURSint6Cache duration and sync interval for entity-level zKillboard statistics.
HOSTILE_ZKILL_MIN_REQUEST_INTERVALfloat0.5Minimum delay in seconds between successive zKillboard API calls to ensure respectful rate limiting.
HOSTILE_ZKILL_USER_AGENTstrNoneCustom User-Agent header for zKillboard requests (defaults to auto-generated AA Hostile Intel User-Agent).
HOSTILE_MAIN_ALLIANCE_IDintNoneFriendly / home alliance ID (defaults to ALLIANCE_ID if defined). Used for threat filtering.
HOSTILE_MAIN_ALLIANCE_NAMEstrNoneFriendly / home alliance name (defaults to ALLIANCE_NAME if defined).
HOSTILE_IGNORED_ALLIANCE_IDSlist[int][]List of alliance IDs to exclude from hostile threat tracking and classification.
HOSTILE_IGNORED_ALLIANCE_NAMESlist[str][]List of alliance names to exclude from hostile tracking.
HOSTILE_IGNORED_ALLIANCE_TICKERSlist[str][]List of alliance tickers to exclude from hostile tracking.
HOSTILE_IGNORED_CORP_IDSlist[int][]List of corporation IDs to exclude from hostile tracking.
HOSTILE_IGNORED_CORP_NAMESlist[str][]List of corporation names to exclude from hostile tracking.

Permissions

AA Hostile Intel provides three granular permission levels:

PermissionDescriptionRecommended Roles
hostile.basic_accessView access to all intelligence catalog pages, dashboards, and timers. Can create new alliances, member/alt corporations, structures, timers, pilot dossiers, stagings, fleet doctrines, and tactical sitreps. Can edit their own submissions. Cannot delete any entries or view audit logs.General Members, Scouts, Line Pilots
hostile.manage_intelFull operational management: can edit all submissions regardless of author, delete any intelligence records (structures, timers, sitreps, pilots, stagings, doctrines, scans), verify and pin sitreps, manage coalitions, and view the complete audit log trail.Fleet Commanders, Intel Scouts, Moderators
hostile.officer_accessSenior intel officer access: bulk database operations and advanced system reconfiguration.Intel Directors, Lead FCs, Auth Admins

Changelog

See CHANGELOG.md for details on changes in each release.


License

This project is licensed under the GNU General Public License v3.0 (GPLv3). See the LICENSE file for details.

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Versions 1

Collected releases
VersionPublishedDirect dependenciesOpen version
0.0.712 Oct 20263

Package advisories

0
No matching advisories collected

This describes our collected data; it is not a security assessment.

Repository

PENDING
broodlk/aa-hostile-intel

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 16:55 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package:657605a06913c4387d56cab8d46886d8259561ddf9d8cc0199fec418d4601dd1