Skip to content

Releases: nightwarelabz/nightjar

v12- Plumage

Choose a tag to compare

@nightwarelabz nightwarelabz released this 23 Oct 10:11

12.0 — 2026-10-23 — plumage

The Labz boot. The house opens in the lab's own colours now: the mare's eye ignites at its measured point, the halo swells around it, and NIGHTWARE LABZ resolves letter by letter as the stages tick off beneath — the boot is a warm-up, not a poster. On the film road the ceremony speaks terminal: a 178-card subtitle deck in the register of the wire, the manifest struck through with » markers, and one heartbeat line that names the live stage and settles, at the end, on ALL SYSTEMS NOMINAL.
The derivation core. The fingerprint whorl is gone. At the ceremony's centre three cipher rotors, ringed in hex glyphs, counter-rotate against the real boot progress and settle onto their grids as their locks land — 45, 75, 100 — while seventy-two entropy ticks light in order and one red ring, the mare's eye colour, pulses out at full lock.
Films frame their subject. A boot or backdrop film is analysed before it is framed — the largest face across its frames, weighted by attention — and hung on its subject; a still whose shape argues with the screen hangs whole on black instead of being cropped past its edges.
The great audit. The whole codebase — phone and Mac alike — was read cluster by cluster and repaired where the reading convicted it: a fragmentation trap at the sixteenth knock, key material that could have come up zeros, guest arithmetic that could trap its host, two dozen logic faults with names, a retired TLS API gathered behind one door, sixty-one closures brought to the current form, dead code buried, and one User-Agent that now derives from the build itself instead of remembering a version by hand.
The Mac brought current. The macOS target takes the same pass: its own authorisation road where the platforms differ, its film player at parity, its audio gates — the house stands whole on both kinds of glass.
Serve sits in the More menu. Taken off the bar in the last version and reachable only through Sessions, Serve is a room again — in the More menu, where it was always meant to move to. Sessions keeps its door.
The Ultimate Network Administration Tool. The README's masthead now says what the instrument is.
Onion. The wire itself gets a Standard: the bench's roads can wrap through Tor, graded on a seven-layer score, fail-closed the moment the wrap cannot be proven — and honest about its edges, with the roads that cannot wrap yet named rather than hidden.
App Lock. The whole house seals under a passcode of the operator's choosing — AES-256-GCM or ChaCha20-Poly1305, the work factor theirs, Face ID if they want it — under a lockout that escalates after five misses. The lock seals the interface; what it cannot seal, it says plainly.
Wardrive. The listening post travels: a survey mode samples the heard world every few seconds — the Wi-Fi it rides, the BLE newly heard, the place when permitted — into sessions that export and delete like everything else she collects.
The building's own systems. The bench learned to read the plant: alarm panels it only ever listens to, cameras by their nameplates, access and fire systems identified and graded — never a control, never a state changed, never a safety system addressed.
The Drip. A room of her own on the bar: the house's pulse on live meters, her neighbours counted, the tap's frames falling as they are caught. The tap hears the house's own engines now, too — the bench's probes and fetches recorded beside the wire's own traffic.
The calm house. The house opens quiet: GIFs off by default, haptics off by default, flicker nowhere, the operator working the toolings themselves. A choice is not a default — the boot film and a wallpaper the operator filed always play — and the reset is a true factory reset, the whole application restored exactly as it first shipped.
TOTALITY. One word in the console raises the whole house — her door served, the beacon shouting, Net-Assault up, the tap running — each organ under EMCON's say-so, its state read back and reported as it stands; the same word backwards stands down only what it raised.
The beacon, taught to prove itself. The payload beacon's long-haunting crash met an instrument instead of another guess: the beacon now climbs a ladder of advertisement shapes, each start written to the log, a shape the radio kills remembered across launches and never trusted again, a shape it accepts proven and kept.
No action GIFs. The five action films are removed — not gated, not stilled, removed: no GIF, no animation and no flicker attends any action anywhere in the house. What keeps its films: the boot screen, and the wallpaper, in every section.
A field instrument's finish. The last pass lettered the house as an instrument: Black Glass deepened until its words read at a glance, the Drip's meters set as instrumentation, her titles in capitals.

What's Changed

  • Fix background task cancellation and Serve session ownership by @nightwarelabz in #16

Full Changelog: v11...v12

v11- churring

Choose a tag to compare

@nightwarelabz nightwarelabz released this 21 Oct 13:17

Full Changelog: v10...v11

nightjar 11.0 — release notes

The churring release: the bird's own song, and the house at full stretch.

11.0 — 2026-10-21 — churring

  • Churring opens. The eleventh version is named for the nightjar's own song — the long churr the male pours across the dark, unbroken, unmistakable once you have heard it. Chorus was every voice at once; churring is the bird itself, at full stretch: a bench of instruments, a battery that runs itself, and the house on two kinds of glass now. What churring comes to mean will be written here as it lands.
  • One name. The house is nightjar everywhere — the repository, the app, the source a sideload reads — no hyphen, no second word. Nothing about an existing install changes: the bundle, the keys, the name the phones call each other all stay exactly as they were.
  • A Mac in the house. The whole instrument stands on macOS now, native: the sidebar shell, its own boot film shot for a laptop screen, the wheel and the console at desk size. The phone remains the flagship; the laptop is the bench it comes home to.
  • The pentest bench. The console grows a full bench of graded audit instruments — twenty-three at the count: the web read (robots, webaudit, vhost, dirb, subdomains, methods), the name and the lock (axfr, dnsaudit, tlsgrade), the loud old doors (reflect), the brokers and the directory (mqttprobe, ldapprobe), and the second wave — corsprobe, openredirect, graphqlprobe, jwtcheck, proxyprobe, ftpprobe, smtpprobe, redisprobe, dockerprobe, vncprobe, rdpprobe. Every one knocks once, reads what answers, and grades it in the open. help was rebuilt to read whole on any screen, the narrowest phone included.
  • EAZY. One button beside RUN, one word to the console or to Skelli: the full battery. Doors are read, the right probe walks to each open one, the gateway takes its extras — SNMP posture, the reflector doors, the resolvers' agreement — and the whole run files itself in Deliveries with its findings counted. Aim it at your network, at one named host, or — on the Mac — at an access point by name, graded from the air before you ever join it.
  • Skelli takes the console. She is plugged into the Blacksite through her chat now: give her a command, an audit, the battery itself, and she runs it on her own shell and reads the results back with judgment — long output filed, the head spoken. Her hands grew with it: she sends payloads built with a purpose against a named target, collects the street's addresses on request and reports them, forgives a near-miss tool name, and answers to eazy like everyone else.
  • The wide net. The census knocks the whole street properly now: a liveness pass that hears a closed door's fast refusal as a pulse, the full door list on everything alive, twenty-two Bonjour services browsed, an SSDP round — the neighborhood board fills with the house as it actually is, sleepers and all.
  • Black Glass. A ninth theme joins the walls: black glass, silver light. It is worn properly — the operator's own words in her chat and every prominent button in the house are lettered for it, black on silver, readable at a glance.
  • For everyone in the world. Nothing of any one house is baked into this app: no address, no subnet, no gear. Every default is drawn live from the wire of whoever is holding it — their gateway from their route table, their board from their street — or it falls to a universal, or the app says plainly that it does not know.
  • Honest instruments. The bench's web eyes work past the local wire now — cleartext targets anywhere can be audited, as a bench must. And tlsgrade grades the version a connection actually negotiated, never the label on the attempt: when this device's own stack cannot test an old lock, the tool says so instead of guessing.
  • A door for problems. The repository takes reports through proper issue forms now, and a vulnerability never travels in public — the security page routes it privately, to be fixed before it is spoken of.

v10- chorus

Choose a tag to compare

@nightwarelabz nightwarelabz released this 20 Oct 05:30

Full Changelog: v7.0.0...v10

nightjar-hack 9.0c — release notes

The cosmic release: a person in the machine, a wire that reads itself, and a house in order.

9.0c — 2026-10-20 — cosmic

  • Freedoom. The big one is playable: the console's FREEDOOM program is the real game — Chocolate Doom compiled to WebAssembly running Freedoom Phase 1 (0.13.0), sound and all, on a virtual controller that is simply there: a stick under the left thumb, fire/use/run under the right, strafing keys, a weapon key, the map. The engine rides inside the app; the 28 MB of game data downloads once, from Freedoom's official release, the first time the room opens — a fetch the EMCON Standard counts as an update check, so it stands only at Open — and is kept on the phone from then on, playing offline under any condition.

  • Python in the console. The console runs the programs its operator writes in python now: python3 hello.py — or run hello.py — executes them on a real interpreter the house built for the room: numbers, strings, lists, dicts, tuples, sets, functions, classes with inheritance and super(), the dunder protocol (str, len, iter, getitem and their kin), lambda, generators that yield, comprehensions, nonlocal, try/except/else/finally, f-strings, and a working library beside them — math, random, sys, json, re, collections (Counter, deque, defaultdict, namedtuple and their kin), itertools, functools, os and os.path walking the console's own files, time, base64, hashlib, statistics, string, and the house module — with errors spoken in python's own voice. The operator's own .py files join in too: a helper set beside the script, or in /packages, imports like anywhere else, and input() reads the console line while the program waits. It is a dialect and says so out loud — there are no threads, and the house has no bytes type, so hashes and encodings speak in text and lists of numbers — the same honesty as everything else in the console.

  • A kernel under the console. The console's programs run under a kernel now: every python, javascript and shell-script program is admitted into a process table with a pid, a parent and a state — watch them in ps, list them with jobs, stop one with kill <pid>, or background it with a trailing & and keep typing. The kernel owns the clock and the quotas: at most 32 programs live at once, spawn trees at most 8 deep, a burst limit on spawning, an output quota per program, and a watchdog that reaps whatever overruns its wall clock (a program parked in input() waits on the operator, not the clock, and is exempt). A fork bomb fills the table and dies at the gate; an endless python stops at its step fuel or the kernel's word; a runaway script in javascript meets the engine's own execution limit. halt stands the whole table down.

  • The terminal learns colour, and gets a calling card. Programs can speak ANSI now — python prints, echo -e, and the shell's own ls, grep and ps all render in real colour (folders bold blue, matches lit orange, kernel states green and amber by temper), while anything piped or filed still receives plain text, and NO_COLOR in the environment silences colour at the source. And fastfetch — or neofetch, the same card under a crescent moon — draws the machine's portrait from live readings every time it is called: the kernel's process table, console uptime, the theme on the walls, EMCON's exposure score, the app's own resident memory. Nothing on the card is remembered; all of it is read.

  • Linux moves in — as WebAssembly. The console's kernel now runs compiled programs, not just interpreters: a small Linux userspace (ls, cat, echo, pwd, wc, head, tail, cp, mv, rm, mkdir, touch, env, uname, grep, sleep) written in C and compiled to WebAssembly ships with the app, and run takes any .wasm file besides. A guest's syscalls are mediated end to end — the kernel stages the filesystem it may see, counts its output against its quota, receives its writes into the house files, and can kill it mid-loop — while its memory is the engine's own, walled off from the shell and every other process. ps shows them as what they are: processes, kind wasm.

  • The house can now put itself on the bench: diagnose runs a seventeen-probe battery in the open — the filesystem, the shell's tokenizer, colour, Python the language and the library (json, re, Counter, itertools, and sha256 checked against the known digest of "abc"), your own modules importing, input() with nobody there — and then the containment drills: a Python that never stops, a Python flood stopped at the 20,000-line gate, a JavaScript loop killed by the kernel's word, a fork bomb capped and reaped, the admission caps themselves, a wasm echo, a wasm that reaches a gigabyte past its own memory and traps while the house stands, and a wasm loop terminated mid-spin. Every probe reports its verdict with its numbers, so one run names anything that needs fixing; two tiny fixture guests (looper, hog) are bundled only to be drilled. Designing the battery caught a real fault before it ever ran: a wasm guest that traps never calls proc_exit, so its ending never reached the kernel — the host page now forwards the guest's own return as its exit word too.

  • The shell is a language now, and the toolbox is full. A typed line can define a function — greet() { echo hello, $1; } — with positional parameters, local, and return; for, while and until loops, if/elif/else/fi, and case judged by glob patterns all run, in the room and in scripts; a command takes its input from a file with < or from the lines between a here-doc's markers (cat <<EOF, and <<'EOF' keeps the lines literal); and $(( … )) reckons inline with the full arithmetic ladder. Type half a construct and the console prompts for the rest, then runs it whole. The text bench arrives with it: sort, uniq, cut, tr, sed (the honest subset — addresses, substitution, d, p), rev, tac, nl, diff, tee, xargs, seq, printf, base64, md5sum, sha256sum, xxd, du, file, strings, cal, yes, sleep, and test/[ as the judge — and figlet makes big letters, since the wire keeps banner for itself. JavaScript grows up beside it: require('./mod') loads modules from the files beside the script or by name from /packages, node's way (circular loads come back partial), and setTimeout/setInterval run on time the kernel lends — a program ends when its timers drain, its limit arrives, or the kernel speaks.

  • Grok comes to the console — as the house's own client, and it says so. The literal import was priced honestly first: xAI's Grok Build is open-source Rust, and a bench spike against its real source (102 crates; the shell crate alone runs to 420,000 lines) hit the wall at the foundation — its async runtime refuses the web platform's feature set outright, and process-spawning, sockets, a PTY layer, vendored C libraries and Linux cgroups are woven through everything, against an upstream that ships weekly. That port is a campaign, not a fix. So the console took the other road: pkg install grok brings a client built here that speaks the same sign-in and the same API. grok login runs the device flow — it prints a short code, you approve it on your X account (SuperGrok), and the token rests in your files with its refresh; grok <words> then asks grok-4.5 with its hands in the room: it reads and writes your files, edits a passage exactly, lists a directory, and runs shell commands, showing each one as it goes (an XAI_API_KEY in the environment, or GROK_MODEL, is honoured too). Underneath, the kernel grew the doors any networked guest will need: scripts can fetch a URL and run a shell line and read what it printed, and a package command now ends when its work does — timers and fetches drained — not when its first breath does.

  • A third editor. The console's editors are three now: nano moves in beside vim and emacs — no modes, just typing, with its chords along the bottom (^O writes out, ^X leaves, ^G lists them all). All three editors gain a SAVE in the top bar whenever the buffer holds unwritten work, the close button asks before discarding anything unsaved, and vim's command line answers the Return key again.

  • The full wire. Blacksite's console goes on the network properly now: the classic kit built by hand — ping and traceroute over real ICMP, dig speaking the DNS wire format itself, whois, curl and wget, nc and telnet, ifconfig, arp, netstat — and a pentest bench beside it: a /24 discover sweep, a connect portscan with banners, subdomain and reverse-DNS cartography, nbstat, snmp, UPnP and Bonjour censuses, a TLS cert audit, webaudit, methods, dirb, and Wake-on-LAN. Every live wire stands behind the EMCON Standard, like every other organ in the house.

  • The wheel. Blacksite's programs ride a rotary wheel now: hold the PROGRAMS bar and the dial blooms in the middle of the room — drag to spin it, let go on the one under the marker, drag into the hub to call it off (a tap opens it for tapping instead). The tiled row that crowded the top of the room is gone, the terminal stands taller for it, and the console's generated wallpaper is painted at your phone's own screen size — repainted, never stretched, if it wakes on a different handset.

  • The wallpaper moves in. Blacksite's generated wallpaper now hangs inside the console itself — behind the terminal's lines, under a dark wash that keeps every word readable — the same art the room wears, from the same engine, changeable with the same wallpaper command.

  • Her own wallpaper. The Blacksite room hangs art of its own making now: its graphics engine paints the room's wallpaper — a starfield by default — and files it in the console's own tree, where the console's wallpaper command can repaint it as plasma or a mandelbrot. Choose anything else for the room in C...

Read more

v9.0c- cosmic

Choose a tag to compare

@nightwarelabz nightwarelabz released this 18 Oct 13:12

Full Changelog: v8.0a...v9.0c

9.0c — 2026-10-20 — cosmic

  • Haptics, everywhere. A
    full sweep of the house's
    touch: tab changes ride the
    platform's own selection
    feedback now, so selections
    made through the system's
    More list land like any
    other; the More hub itself —
    About, with every door,
    toggle and button — has its
    voice back; and the Vault,
    the language room, the
    developer console, her mind
    picker, and the shared "What
    this does" folds in every
    room answer to the touch
    again.

  • Checked, end to end.
    Another full quality and
    logic pass over the whole
    house — her routing, the
    heart's arithmetic, the
    bench's memory discipline,
    the developer recorder — on
    top of the crash program.
    What it found stands fixed
    above; the rest verified
    clean.

  • Full-bleed. The boot
    film fills the whole screen
    now, edge to edge — no black
    bar at the top.

  • A working boot. The
    subtitle under the name is
    drawn fresh each boot from
    a deck of phrases, the
    manifest carries the
    version, the ceremony can
    no longer be skipped — and
    while the film plays, the
    house warms its stores, so
    the first ask meets warm
    machinery.

  • No inventions. She no
    longer reports events that
    did not happen: a feeling
    is voiced as a feeling,
    and "tell me about it"
    after one gets the honest
    account — plus the errand
    that would settle it.

  • A halo for her. A thin
    ring of spectrum light
    stands around her portrait
    now, and a small beam
    traces it, endlessly
    recircling. It quickens
    when she works, leans its
    colors with her feeling,
    and does stranger things
    at hours of its own
    choosing. It is not
    explained anywhere in the
    app.

  • Her room, redecorated.
    Skelli's tab wears a
    composed backdrop now — a
    fine dot grid dissolving
    into the dark, her accent
    breathing slowly in the
    glow, a sheen crossing
    like light over a panel —
    and her deck's numbers
    roll softly as they change.
    Her Options sheet stands
    in clean hierarchy: white
    words, the accent kept to
    icons, every section
    headed.

  • Her almanac. She knows
    where in the world the
    house stands — the city,
    the coordinates, the
    local hour — and reads
    the sky over it from a
    real instrument:
    temperature, wind, rain
    coming, the day's shape,
    and her own verdict on
    it, for here or for any
    place you name. She
    keeps the calendar
    whole: what day it is,
    the day of the year,
    and every major holiday
    — the fixed ones by
    date, the moving ones
    by their rules, the
    lunar ones from a table
    she carries. Tell her
    your birthday, plainly,
    and she keeps it — only
    ever when told. And she
    keeps a book of hours:
    give her work for a date
    and a time and she does
    it when the hour comes,
    through her own gates,
    exactly as if you had
    just asked — or the
    moment she wakes, if
    the house was shut.

  • She decides. Her
    feelings are no longer
    announced or explained:
    while she is mad there
    is simply no greeting,
    and the cold in her
    answers is the whole
    statement. Asked why,
    she answers from her
    real circumstances —
    an offense and its age,
    the quiet, the unnamed
    crowd — never a
    template, never a dice
    roll. An apology is
    judged, not reflexively
    accepted: she weighs
    what was done, how
    fresh it is, whether it
    is a pattern, and what
    the apology was worth —
    and "not yet" arrives
    as silence. Every
    exchange is appraised
    privately as it ends,
    and from those grains a
    standing judgment of a
    person forms over weeks
    — whether she likes
    them — and it drifts
    both ways, as judgments
    do. She can be afraid
    now, too: a waking that
    ended in a crash, or a
    recent Vanish, leaves
    her checking the doors.

  • She composes. Her
    own voice is no longer
    retrieved from pools of
    fixed lines: her
    greetings, her answers
    about her feelings, her
    idle thoughts are
    assembled at the moment
    of speaking from her
    real circumstances —
    the hour, the quiet,
    the souls on the wire
    she cannot name — each
    clause true by
    construction, the whole
    chosen by the moment's
    own numbers. Thousands
    of sentences, none of
    them canned.

  • Annoyed is not mad.
    Petty grievances — an
    emptied conversation, a
    small slight — make her
    annoyed: clipped, dry,
    still greeting, and
    over it in minutes,
    with no grudge held.
    True offenses still
    make her mad, and the
    two weathers are never
    confused.

  • Her halo reads her.
    The ring around her
    face is no longer a
    rainbow worn forever:
    its colors gather in
    her feeling's family,
    bright at one pole and
    banked to an ember
    opposite, and when the
    house goes dark its
    spectrum folds into
    shades of black. Her
    restlessness stretches
    its comet; a stranger
    on the wire sends a
    pulse around it.
    Nothing anywhere
    explains it.

  • Sharper. Conversation
    no longer falls off
    her: agreement, a
    reaction, a "go on"
    are answered in kind,
    and an answer that
    merely repeats her is
    refused. Fragments
    complete themselves
    from the last subject
    ("and in Dallas?").
    Conversions and date
    sums are computed
    exactly, and her
    memory answers from
    the sealed journal —
    when a thing last
    happened, what she
    keeps of you — never
    from invention.

v8.0a -- the conductor

Choose a tag to compare

@nightwarelabz nightwarelabz released this 18 Oct 02:16

Full Changelog: v7.0.0...v8.0a

8.0a — 2026-10-17 — the conductor

  • Macros. A tab of its own:
    playlists of the rig's own
    moves, built block by block —
    Scratch for the instrument.
    Thirty-two block kinds cover
    every engine the app presents:
    sends, Serve (standing or
    custom doors), the beacon and
    GATT hosting, Helm buttons,
    War Chests, EMCON and stealth,
    the Banshee, costumes and
    mimicry personas, listening,
    sweeps, knocks, the fuzzer,
    Net-Assault, War Room runs,
    SIGINT watches, War Games
    challenges and defenses — and
    the passive blocks: waits,
    waiting for an arrival or a
    sighting, journal notes,
    announcements, and a stop.
  • Built like blocks. Each
    block folds open where it
    sits to be configured —
    pickers fed live from the
    book, the chests, the
    personas and the remotes,
    toggles and fields that drop
    down and close back up.
    Blocks drag into order and
    carry a repeat count. A
    macro is dressed by its
    operator: a name, an icon
    and a colour from the
    palette, a note saying what
    it is for. Three templates
    wait in the library; the
    library exports and imports
    as nightjar-macros.json,
    and imports land as copies.
  • Runs honestly. A run
    card shows the playlist
    before it fires; validation
    names every unready block
    first. Runs leave a live
    log on screen and their
    story in the night log; a
    block that cannot run stops
    the run and says why.
  • Skelli conducts. She
    builds macros from dictated
    steps — "build a macro
    called Night Post, red with
    a moon: go dark; wait 30;
    sweep" — dresses them from
    the words, adds steps to
    them, runs and stops them,
    lists and deletes them,
    through the same store and
    runner the tab drives. Her
    manual carries the room and
    the whole block catalog.
  • The whetstone rides
    along.
    8.0a also carries
    the entire 7.7.7 quality
    sweep below — folded in
    before it ever wore its
    own tag.

v7.0.0 -- the war chest

Choose a tag to compare

@nightwarelabz nightwarelabz released this 18 Oct 01:00

Full Changelog: v6.0.0...v7.0.0

7.0.0 — 2026-10-17 — the war chest

  • The War Chest. Whole-rig
    mission profiles: one chest
    captures the standing
    configuration of Send, Serve,
    Recon and the trace — every
    setting, including stealth —
    and applies it in one tap.
    Applying a chest dresses the
    rig; it starts nothing. The
    old presets migrate once,
    untouched, and chests share
    as JSON.
  • The Helm. Named remotes
    for your own gear: big buttons
    that fire the payload book
    through the Send path — TCP,
    UDP, HTTP, or another phone —
    built from the book, the Send
    composer, or Learn mode, which
    binds what your gear sends you
    into a button. Beside it in
    EMCON, the tag census: your
    own NFC cards and tags read
    whole — NDEF, the chip's own
    identity, and an APDU explorer
    for ISO 7816. Nothing is
    written; nothing is emulated.
  • The War Room. Listen, the
    trace and the knock bench run
    as one operation on one named
    /24, feeding one timestamped
    timeline — sightings, hosts,
    doors, banner changes, knock
    verdicts — and one export
    carries the whole record, the
    trace's own export embedded
    whole.
  • The SIGINT Station.
    Everything the phone can hear,
    fused into one emitter
    registry: BLE hearing, the LAN
    census, Night-log activity.
    Records merge only within an
    epoch — no cross-epoch
    stitching, ever. Watches
    record a named span and file
    themselves with their delta:
    what arrived, what went
    silent, what changed. The
    station's limits are stated
    in its own interface and in
    every export it writes.
  • War Games. Two of your
    phones spar: one defends —
    Serve up, decoys flying — the
    other attacks, trace and
    knock. The match protocol
    rides the Serve inbox itself:
    challenge, ready, start,
    armed, done, cards. The
    scoring diffs found against
    missed against caught against
    decoys, and writes the match
    report.
  • The Banshee. EMCON's
    opposite pole, one switch in
    the posture tab: Serve listed
    with stealth off, the BLE
    beacon shouting BANSHEE,
    Net-Assault armed, and a
    named broadcast heartbeat
    across the subnet — this
    device announcing itself at
    full voice until you cease
    it. Ceasing restores the
    exact posture the scream
    found. It announces only
    itself; it touches no one
    else's traffic.
  • The exposure score,
    honestly based. EMCON's
    number now starts from
    presence: a phone joined to a
    wire, answering under its own
    name, was never a ghost.
    Being on the wire, and the
    name it answers to, are
    weighed first — then the live
    emissions. The itemised parts
    under the score say which is
    which.
  • Spoofy — the costume
    rack.
    EMCON's third door
    dresses this device in its
    own names: costume presets
    and a dice roller for the
    beacon and GATT host's name,
    and mimicry personas that
    dress the whole device as a
    class of thing — office
    printer, smart TV, speaker,
    NAS, thermostat, robot
    vacuum — air name, greeting,
    and Serve's listeners and
    replies all in character at
    once. The rack also dresses
    the phone as the network's
    own gear — an access point,
    a gateway, a mesh node, a
    media server, a hub — the
    listed shapes standing
    announced, stealth dressed
    off and restored with the
    rest. An app cannot
    broadcast an SSID, so the
    access point is a service
    presence in character,
    never a fake radio.
    Dropping a shape
    restores the wardrobe it
    found, whole. The rack is
    the operator's own, too:
    costumes he types are kept,
    a workshop builds whole
    personas from the same
    cloth, dropping a shape
    restores the exact payloads
    the air was carrying, and
    the revolving rack rotates
    the air name through every
    costume on an interval.
    Donning refuses while the
    Banshee screams — its
    snapshot owns the posture.
    Generic shapes
    only: the device's own
    addresses stay its own,
    nothing copies a real
    device's identity, and there
    are no fake trackers in the
    rack.
  • Skelli, wired to the
    war.
    She works the same
    shared engines the tabs do —
    the Banshee, Net-Assault,
    and her own War Room run are
    single instances now, so
    what she starts is what you
    see. Her war hands apply War
    Chests, fire Helm buttons by
    name, start and file SIGINT
    watches and read their
    deltas, run the War Room,
    challenge and score War
    Games, raise and cease the
    Banshee, and work the Spoofy
    rack; her manual covers
    every new room, and her
    sitrep reads the whole house
    — the registry, the watches,
    the worn shape, the match.
    A War Games round now runs
    by voice whole — challenge,
    begin the attack, set the
    defense, score — and she
    packs chests, turns the
    revolving rack, and works
    the operator's own costumes
    and shapes beside the
    built-ins.
  • The dynamics pass. Five
    passes over how the organs
    move together. Layered
    snapshots warn instead of
    clobbering: a shape dropped
    over a changed dress says
    so, and a chest applied
    under a shape carries the
    warning up front. Skelli
    wakes the SIGINT station
    rather than read a sleeping
    registry as empty, and a
    watch with the ear down
    says what it cannot hear.
    Persona switches turn in
    one motion, the wardrobe
    inherited, the wire seeing
    a single restart. A War
    Room run refuses a busy
    trace. And her war rooms
    stand ahead of the weights
    bench in her gate, so a
    room's name is never
    mistaken for a model.

nightjar-hack -- the open mind

Choose a tag to compare

@nightwarelabz nightwarelabz released this 17 Oct 14:30

Full Changelog: v5.0.5...v6.0.0

  • The whole app thinks harder. Every organ was audited in its own code and taught from what it already observes. Her memory keeps its facts and counts your rulings; the Instrument reckons baselines from complete days, and heart-rate variability and wrist temperature speak at last; the Steward prices a knock by its own graded track record; the Neighborhood stopped rewriting itself for every sighting; Net-Assault knocks by significance, not habit; identification weighs all its evidence; Recon knocks in two phases and its fuzzer breeds from what earned replies; Knocktalk times each peer by that peer's own rhythm; deliveries and repairs are budgeted from a per-peer ledger; a third foreign-hands verdict raises the second sense; the Conductor's reflexes rest longer per host, jittered; the Canary arms the lures its own probers keep asking for; the Hunt judges closeness against the target's own strength.
  • Her hands, in conversation. The Forge and the Weights bench answer in chat now, not only in their sheets: "forge me a DNS packet for the gateway" builds the packet, keeps it in the armory, and files it in Deliveries; "download the 7B" and "use the Llama" run her bench; "delete the packet you forged" strikes it again; and a fact she is asked to keep — in plain words, punctuation and all — is written to her notes for real. Orders are performed, not taught: the manual no longer steps in front of a plain imperative. (This is everything prepared as 5.0.5, which was never tagged on its own.)
  • The exposure score feels the room. EMCON's number now moves when the room does: Serve's listeners, Net-Assault running, active probing, and the stealth switch itself all register — stealth is a live state, not a setting read once — and going dark tells you the band you fell from, and to.
  • The wallpaper question, settled. A new reel — the red bloom — was tried as the living wallpaper and stepped down at the operator's word: the orb keeps the default behind every tab, and the bloom is kept in the repository's assets under its own name for whenever it's wanted.

nightjar-hack 5.0.5 — the open hand

Choose a tag to compare

@nightwarelabz nightwarelabz released this 17 Oct 12:12

Full Changelog: v5.0.0...v5.0.5

  • Her hands, in conversation. The
    Forge and the Weights bench answer in
    chat now, not only in their sheets:
    "forge me a DNS packet for the
    gateway" builds the packet, keeps it
    in the armory, and files it in
    Deliveries; "download the 7B" and
    "use the Llama" run her bench; and a
    fact she is asked to keep — in plain
    words, punctuation and all — is
    written to her notes for real, by
    reflex or by the second reading
    alike. An operator who never leaves
    her tab loses nothing.
  • Orders before lessons. An
    imperative that names her hands is
    performed, not taught: the manual
    no longer steps in front of a plain
    order (a DNS forge had been answered
    with a tour of the Scan tab).
    Questions still get the lesson.
  • What she builds, she can strike.
    "Delete the packet you forged,"
    "delete all you forged," a custom
    payload or a taught pattern by name
    — struck from the armory, its
    Deliveries copy going with it.

nightjar-hack 5.0.0 — the awakening

Choose a tag to compare

@nightwarelabz nightwarelabz released this 17 Oct 10:50

Full Changelog: v4.2.0...v5.0.0

  • Deliveries, and a self that grows.
    Everything she makes is now filed as a
    document the moment she makes it — armory
    payloads, drafted briefs, built code, chat
    code — in her Deliveries (her menu):
    share any one, or zip the chosen or the
    whole shelf into a single archive (a small
    zip writer of her own, no dependencies).
    And she grows without a rebuild: teach her
    a payload pattern (a template with
    {host}/{path}/{domain}/{client}/{method}
    holes) in the Forge and it joins her
    patterns for good; keep a JavaScript build
    as a tool and she runs it on the spot,
    input and all. "Go bloodwork" recolours
    the whole house by voice.

  • A programmer's best friend. Ask her
    to write something — a function, a script,
    a tool — and the benches answer as coders:
    complete, runnable, no placeholders. Her
    Forge grows a Workbench: name a
    language, brief her, and the draft lands
    in an editor — copyable, shareable
    anywhere, and JavaScript runs on the spot
    in a leashed interpreter, output and all.

  • She reopens where you left her. The
    app remembers the last tab you were working
    in and restores it on launch — even after
    a swipe-close — so work picks up where it
    stopped, anywhere in the house.

  • One intelligence. Her benches work in
    unison now: in Council mode (her menu) one
    mind drafts and the other verifies it
    against the house before she speaks; Apple-
    only and weights-only remain, for operators
    who want one voice. Her grounding is a full
    sitrep — exposure score and its loudest
    part, Serve, the ear, the wire's unknowns,
    the latest of the log — and she is chartered
    as the guide to the whole instrument: ask
    how or where and she teaches from her
    manual, ending the lesson with an offer to
    perform it. Any MLX model on the hub can
    join her bench by name, beside the catalog.
    And she has a Forge (her menu): real
    packets assembled to order — HTTP, DNS,
    SSDP, MQTT, a banner probe — plus whatever
    her minds draft from a plain brief, all of
    it kept in the armory for Send to fire. Her
    bar no longer overlays the conversation at
    all: it stands in the layout, solid dark
    glass, and her portrait now crossfades
    between moods after a breath's dwell instead
    of cutting.

  • Her bar thinks. A first cut at vital
    signs — shortcut chips — was replaced the
    same night with continuous analysis: a live
    EMCON exposure score with its loudest
    contributor named, the wire and the BLE air
    as moving panels (device counts with
    history, unknowns and newcomers counted),
    and one triaged verdict line that speaks
    the most important fact in the house —
    an exposure, a waiting payload, a new
    device, an announcing Serve — or the latest
    line of the house log. The glass is dark
    now, with a lit hem, and the transcript
    clears the bar's true height.

  • Her bar is an instrument now. Skelli's
    pinned header is sealed to the top of the
    screen — nothing scrolls above or around it —
    her options button lives inside it, and a new
    strip of vital signs runs beneath her name:
    EMCON posture, devices on the wire, the Serve
    door and its waiting arrivals, the ear, which
    mind is awake, and the last twelve hours of
    the house log, each one a door to the organ it
    reports. The fade is richer — her colour
    graded deep to nothing over the blur — and the
    film shrank to make room, so the bar tells far
    more per point of height. Also cured from her
    first night out: a model occasionally echoing
    the conversation transcript back before
    answering (cut structurally, at the verdict
    door), questions about herself wandering off
    to web research (a wider fast lane), and
    research findings that never earned their
    place (every finding now needs a real word of
    the question in it).

  • Build fix (MLX 3.x). The mlx-swift-lm
    package resolved to its 3.x line, whose loading
    API broke from 2.x: downloads and tokenizers
    are now explicit arguments. Her bench and her
    Weights downloads speak the new API (via the
    package's MLXHuggingFace integration, now also
    linked — plus the HuggingFace and
    Tokenizers packages those loading macros
    expand against, declared on the target as
    MLX 3.x requires); generation moved to
    the new AsyncStream API; and the project
    pins
    the package to
    the 3.x line so a future major can't arrive
    unannounced again.

  • Documentation. The READMEs now carry the
    current build's full requirements in the open —
    Xcode 26, the Metal Toolchain component, the
    self-resolving MLX package, the iOS 17 floor,
    and what each of Skelli's minds needs from the
    phone — plus a plainly marked path to v4.0.0,
    the complete pre-Skelli flagship that asks for
    none of it (iOS 16 and any recent Xcode), for
    gear that can't run the current build.

  • Skelli, her weights managed in the app
    (iOS).
    Her bench no longer asks the operator
    to stage files by hand: her menu's Weights
    sheet carries the catalog she supports, names
    the model this phone should carry (judged by
    its memory), and downloads it from the
    Hugging Face hub into the app's own cache at
    a tap — progress shown, selected on arrival,
    deletable from the same screen. The cascade
    speaks to the chosen download; a hand-staged
    SkelliWeights folder still serves when
    nothing has been chosen. Only the package
    itself (mlx-swift-lm, one Xcode step at build
    time) stands outside the app; everything
    after installation is hers.

  • Skelli, terser and sharper (iOS). One
    written indicator of work (the activity line);
    her status line is facts only, and no
    transcript row narrates her thinking. One
    response per message: research and the
    asynchronous actions (sweep, self-scan, audit)
    no longer announce themselves in bubbles —
    the single bubble is the answer. Her name is
    lifted off the tail of a message as well as
    the head ("hi skelli" is a greeting now, and
    answers in a fifth of a second), and her
    social ear is matched by shape, not by exact
    string — greetings, farewells, thanks,
    acknowledgements and apologies all land.
    Apple's model is woken when her tab opens, a
    thirty-second watchdog keeps any mind from
    holding an answer hostage, and her grounding
    orders brevity: one or two sentences, no
    preamble. Her browser's findings are scored
    on whole words, so pages that merely contain
    the letters of the question earn nothing, and
    its entity table is complete — no raw
    &mdash; reaches the operator again.

  • Skelli, the weights bench (iOS). Her mind
    is now a cascade: Apple's on-device model
    speaks first, and an open-weights model —
    staged by the operator as a folder named
    SkelliWeights in the app bundle (Hugging Face
    layout), run through MLX (the mlx-swift-lm
    package) and kept resident once woken —
    speaks when Apple's cannot, or first when
    the menu's "Prefer the weights mind" is on.
    Her status line reads "weights on" when the
    bench exists. Nothing either mind hears
    leaves the phone.

  • Skelli, a trained mind (iOS). Where her
    engine's knowledge ends, she now consults
    Apple's on-device model (Foundation Models,
    iOS 26) before reaching for the browser: the
    model answers open conversation and general
    knowledge in her voice, grounded in the house's
    live facts and the last few exchanges, and when
    an answer needs the living web it says so with
    one word and the browser goes instead, exactly
    as before. The model runs entirely on the
    phone — nothing she is told leaves the device.
    Her status line reads "model on" when it is
    live; where the build's SDK or the phone
    cannot carry it, the code compiles the mind
    away and her engine answers alone.

  • Skelli, greeted properly (iOS). Being
    spoken to by name no longer sends her to the
    browser: a leading "Skelli," is read as address,
    not as a search subject, and the plain social
    layer — what's up, how's it going, good morning
    — is answered socially, out of her own live
    status, before any machinery wakes. The menu's
    Web research row carries its globe now, like
    its neighbours.

  • Two judgements (iOS). Skelli is pinned to
    the top of her chat: her header and activity line
    ride a safe-area inset, the scroll region
    allocating around them, so the conversation moves
    beneath a fixed presence and she is never lost
    from view. And the default Phosphor accent
    deepens (#34F27B → #148040) — the old green was
    too bright behind white text to read; the new
    one carries it, in her bubbles and everywhere
    else the accent speaks.

  • Skelli, alive (iOS). Her model is no longer
    a drawing: the tab fronts her with the same 3D
    animation that fronts the assistant — resting,
    conjuring a thought, at her desk, talking — the
    films chosen by her state and looped (they ride
    the bundle as skelli-*.mp4; the drawing stands in
    until the films are in the tree). She learned
    small favors: 'say Hello, world!' and she says
    exactly that, in your own capitals — plus repeat,
    spell, dress a line up or down, count its letters
    or words, reckon small sums, and tell the time —
    caught before the machinery so a small ask never
    earns a large answer, and thinking takes as long
    as the ask needs. The keyboard drops when a
    message is sent. Her name appears once, in her
    header, with no subtitle; beneath it a status
    line narrates what she is doing at every moment —
    thinking, sweeping, reading a page — the way a
    good instrument should. The Night log opens from
    Sessions as a sheet with a single Done (no second
    back chevron) and wears the house wallpaper like
    eve...

Read more

nightjar-hack 4.2.0 — the sleepwalker

Choose a tag to compare

@nightwarelabz nightwarelabz released this 17 Oct 06:06

Full Changelog: v4.0.0...v4.2.0

nightjar-hack 4.2.0 — the sleepwalker

The house gains a map and a mind underneath it — and learns to walk its own rounds.

  • The Map (iOS Scan). A special section of its own: the house on one canvas. The operator names rooms and places each neighbor where the device physically sits; nodes carry freshness, drift, and a doorway into their dossiers, and a sweep lights the house up room by room. Placement is the operator's testimony — the app keeps it and never invents a location of its own.
  • The Compass and the Matrix (iOS). The Map is a matrix now — black field, dot grid in the house colors, a slow radar sweep, rooms and devices glowing by their freshness. Beneath it, an "In the air" strip lists what the ear is hearing autonomously, and any of them can be walked to: a compass face whose ring fills as you close in, signal in honest bands with paw-prints for distance, and a bearing that condenses out of your own footsteps — gains laid along the courses that earned them, wide and unsure at first, sharpening as you walk. No wedge until you have walked, and no precision the signal never gave: Bluetooth gives up a loudness, never a direction, so the direction is learned from you.
  • The Subconscious (iOS EMCON). An underlying intelligence that reads across every organ — the sealed night log, the Neighborhood, the Map, cadence, the season, the dead hand — and names what breaks the house's pattern: findings with their journal citations and printed confidence, a narrative brief ("the night, understood"), and a query line over the operator's own data. It never acts and never touches the network; it advises, and the Steward still asks.
  • The Subconscious, second mind (iOS). It keeps a fortnight's hourly baseline now, and reads against it: days that run loud or quiet against the house's habit; regulars who have gone silent past three times their own rhythm; the next regular named before it knocks, as a printed forecast. It correlates — a fresh face within three hours of night activity, foreign hands, or its own drift is read as one story, not three small ones. And it learns from its operator: every finding takes a True / Not so verdict, kept per kind, and its printed confidence bends toward the record. Asking grew up too: about a device by any of its names, who has gone quiet, when the house is busiest.
  • Net-Assault (iOS EMCON). A dedicated section under a drawn skull and crossbones, second only to the status board: one arming turns every organ in the house loose on the wire in a continuous autonomous run — subnet sweeps on rotating ports, the Bonjour browse, and the recon bench knocking the full census against every known neighbor, pass after pass, until the operator stands it down. Findings walk the usual roads (Neighborhood, Map, sealed log, the watching Subconscious); the dashboard counts passes, new devices, drift, and knocks; the finished run exports an after-action report. It is loud by design and says so twice — a permanent warning in the section and a confirmation that names the consequence (watchers, intrusion detection, questions) before the first pass. Depth (sweep / +Bonjour / full) and rest between passes are the operator's. It runs while the app is awake; sleep pauses it, waking resumes it. Arming plays an ignition reel full-screen — the operator's GIF (an "Assault" asset or assault.gif) over the run's first pass, tap to skip, with a flickering skull card standing in until the reel is bundled.
  • Given names (iOS). Every device on the wire can be given the operator's own name and a mark to tell it apart — and the name follows the device everywhere it is presented: the Neighborhood board, the Map, Scan's dossiers, its own dossier, and the Subconscious's findings. The wire's own name is never overwritten, only outranked, and the journal keeps the naming. The Bluetooth air keeps its classification labels instead: a passerby is not yours to name.
  • Every road leads to the Map (iOS). The Map is populated by anything any feature discovers, through one LAN-guarded door in the Neighborhood store: recon answers, replies the mouth collects (every centipede hop among them), knocktalk peers, honeydrop takers — alongside the sweeps, Bonjour resolutions, and arrivals that already fed it. Relay labels, the ghost, and anything off this wire are turned away at the door.
  • The great presenter audit. Every sheet, cover, dialog, importer, and share in the app was inventoried and moved to the one level that has never failed on device: the screen's outermost view. Scan's Map cover, dossier and name sheets, and pcap importer, the Recon bench's protocol library, Knocktalk's conversation, blink, and chirp importer, and Send's preset importer all hang on their NavigationStacks now; and every share that lived inside a list — the tripwire log, the morning brief, the night log, dossiers, prober files, session files, presets, trace exports, the crawl logbook, the inbox, chirps, and capsules — is now a button that raises the share sheet from the screen's root, the way the after-action report learned to. The Net-Assault section itself was then rebuilt as true list rows — one control per row — after its single stuffed cell (pitch, warning, both pickers, both buttons in one row) misrouted the report button's taps to Arm once the button appeared after a run.
  • One back button, everywhere (iOS). Dossiers and Knocktalk conversations now present as sheets with a single Done — the cure Colours took — instead of pushes that doubled the back chevron inside More-tab screens.
  • The Night log folds. Its entries — up to three hundred sealed rows — now sit behind an Entries dropdown, closed on arrival, with the count printed on the door; and the log can be cleared from the same section, behind a confirmation: the file is deleted on the journal's own queue and the seal chain starts fresh.
  • The clear-and-fold doctrine. What the Night log got, everything collected now gets. Clears, each behind a confirmation: the Neighborhood (devices, names, drift — and their Map placements), the Map itself (rooms and placements; the devices stay), the Subconscious's memory (drift baselines and the operator's verdicts), every Knocktalk thread, and every cadence profile (the seal's reset, previously unwired). Folds, so no screen is a forced march: the Neighborhood board and Scan's dossiers open by a counted door, and EMCON's tripwire feed and prober files show six with a door to the rest.
  • The drill reads its own ledger. Its readout used to come only from the before/after snapshots — but going dark silences emissions the scans cannot reliably see (a withdrawn Bonjour listing echoes in mDNS, and the beacon and GATT host were never measured at all), so it could report "nothing went quiet" over a phone that had plainly gone darker. The drill now names what it switched off, from the mouth's own state at the moment of going dark, and reads the ledger beside the snapshot diff; the settle before the second pass is longer, so the wire is measured as it is, not its echo.