Claude 24f816b6a3
Consolidate 22 sibling repos into layered organism structure
Place useful parts of the surrounding repos into sica-fondt by layer, per the
body model (Ada = membrane; brain/endocrine/capabilities/knowledge non-Ada):

- brain/        LLM reasoning + providers (dapr, hermes, MoMoA)
- capabilities/ REPRAG sidecars: hermes tools/skills, dapr tools, parallel
                dispatch, A51 channels, and the OSINT cluster
- knowledge/    LORAG corpus: 754 cyber-skills, agency personas, secure-coding,
                MITRE ATT&CK data
- reference/    defensive threat-reference (C3, shhbruh doc) + AdaYaml parser

License handling: AGPL sources (worldosint, advanced_evolution, mercury,
Reticulum) and GPL DeTTECT are SPEC-only clean-room/port descriptions — no
copyleft code copied. MIT/Apache/data parts copied as working trees.

Safety: shhbruh escape/persistence material and C3 covert-C2 kept as reference
only, not wired into the running organism. See CONSOLIDATION.md.

https://claude.ai/code/session_01UehUqEXXJJCsHoA4voCU5c
2026-06-10 06:53:01 +00:00

1.8 KiB

API Reference: GoPhish Phishing Simulation

Python gophish Library

Constructor

from gophish import Gophish
api = Gophish(api_key, host="https://localhost:3333", verify=False)

Campaigns

api.campaigns.get()                    # List all campaigns
api.campaigns.get(campaign_id=1)       # Get specific campaign
api.campaigns.post(campaign)           # Create and launch campaign
api.campaigns.summary(campaign_id=1)   # Get campaign summary
api.campaigns.delete(campaign_id=1)    # Delete campaign

Templates

api.templates.get()                    # List templates
api.templates.post(template)           # Create template
Template(name="...", subject="...", html="<html>...</html>", text="...")

Groups

api.groups.get()                       # List groups
api.groups.post(group)                 # Create group
Group(name="...", targets=[User(first_name="", last_name="", email="")])

SMTP Profiles

api.smtp.get()
api.smtp.post(smtp)
SMTP(name="...", from_address="...", host="smtp:587", username="", password="")

Landing Pages

api.pages.get()
api.pages.post(page)
Page(name="...", html="...", capture_credentials=True, redirect_url="")

Campaign Model

Campaign(
    name="Q1 Test",
    template=Template(name="Existing Template"),
    page=Page(name="Existing Page"),
    smtp=SMTP(name="Existing Profile"),
    groups=[Group(name="Existing Group")],
    url="https://phish.example.com",
    launch_date="2024-01-15T09:00:00+00:00"  # ISO8601
)

Result Statuses

Status Meaning
Email Sent Email delivered
Email Opened Tracking pixel loaded
Clicked Link Phishing URL clicked
Submitted Data Credentials entered
Reported User reported phishing