Skip to content

Releases: Tiagospem/corescope

CoreScope 0.13.1

Choose a tag to compare

@github-actions github-actions released this 23 Oct 19:10
7a45d4e

Fixed

  • The menu bar menu grew past the screen with many profiles, projects, orphans and agent
    sessions. The search and the footer stay put and the sections scroll within the screen's
    visible height; with little content the menu keeps its natural size.

Commits since v0.13.0

  • fix(menu): keep the menu bar menu within the screen (92b3d50)
  • chore(release): 0.13.1 (e405cf2)

Full diff: v0.13.0...v0.13.1

Install

  1. Download CoreScope-0.13.1-macos-universal.dmg below (universal: Apple Silicon and Intel, macOS 14+).
  2. Open the DMG and drag CoreScope to Applications.
  3. The app is open source and signed ad hoc, not notarized by Apple, so macOS blocks it the first time. Open it once, then go to System Settings → Privacy & Security and click Open Anyway. Alternatively, in Terminal:
    xattr -dr com.apple.quarantine /Applications/CoreScope.app

The Intel slice is built and checked on every release but has not yet been run on an Intel Mac; reports are welcome.

Checksums (SHA-256)

86dc6bcc2a864337b64e0770f70c855330e277957538442798c6f6413bf3039a  CoreScope-0.13.1-macos-universal.dmg
f24789d38d4b47e3303fe9181da38720a3f37ee5e6781ac2371bc8a3e1bf4db3  CoreScope-0.13.1-macos-universal.zip

Verify with shasum -a 256 -c SHA256SUMS.txt in the download folder.

CoreScope 0.13.0

Choose a tag to compare

@github-actions github-actions released this 22 Oct 18:32
fbcf329

Changed

  • The capacity gate admits or refuses at once instead of holding commands. The hook decides
    within 5 seconds: the command runs, or the agent reads why, the numbers and what to do; if
    CoreScope cannot decide in time the command runs and the failure is recorded. Blockers are
    transient (CPU, memory pressure: wait with wait_for_capacity) or structural (a full
    container VM, a container at its limit or stopped: do what it says; waiting won't help).
  • Each heavy command says what it uses: a plain prefix runs on the Mac (CPU and memory);
    {command, uses: [cpu, memory, containers], containers: [...], weight} also checks the container
    VM and the containers it loads (running, below 90% of their own limit). Default PHP suites and
    Docker commands use containers. Existing .corescope.yml files keep working.

Added

  • Admission queue shared by every session: admitted commands count as running while their
    processes live; at most max_parallel (by weight, default 2) at once, one heavy command per
    container, staggered admissions, earlier commands first; places expire when a session stops
    asking or ends. MCP reserve_capacity, release_capacity, capacity_events; system_capacity
    and wait_for_capacity take the command. The Agents page shows the queue with Run now and the
    latest decisions.
  • corescope capacity-advice / MCP capacity_advice: reads the container VM and the
    project's containers (limits, use, missing limits, limits larger than the VM) and proposes the
    wait_for_capacity rule with what each heavy command loads.

Fixed

  • Explicit waits that never end: wait_for_capacity stops at once on a structural blocker, and
    when max_wait_minutes passes it says not to run the command (instead of "go ahead").

Commits since v0.12.1

  • feat(capacity): admission queue for heavy commands instead of a gate that holds them (817c0ba)
  • chore(release): 0.13.0 (6865b49)

Full diff: v0.12.1...v0.13.0

Install

  1. Download CoreScope-0.13.0-macos-universal.dmg below (universal: Apple Silicon and Intel, macOS 14+).
  2. Open the DMG and drag CoreScope to Applications.
  3. The app is open source and signed ad hoc, not notarized by Apple, so macOS blocks it the first time. Open it once, then go to System Settings → Privacy & Security and click Open Anyway. Alternatively, in Terminal:
    xattr -dr com.apple.quarantine /Applications/CoreScope.app

The Intel slice is built and checked on every release but has not yet been run on an Intel Mac; reports are welcome.

Checksums (SHA-256)

3e77636d1822ac4113deb10b5518195dfc957c2dd4c90af68b2469882397dfe5  CoreScope-0.13.0-macos-universal.dmg
aeb791a3706874441e1629ff95f82b2854c9bfc336be543b78343499fcf812d2  CoreScope-0.13.0-macos-universal.zip

Verify with shasum -a 256 -c SHA256SUMS.txt in the download folder.

CoreScope 0.12.1

Choose a tag to compare

@github-actions github-actions released this 22 Oct 13:05
15b3fca

Added

  • Container VM memory in the capacity gate: OrbStack / Docker Desktop / Colima containers live
    in a VM with its own memory (often 4 GB). wait_for_capacity, system_capacity, the gate hook and
    corescope wait now read it and wait while less than container_memory_free (default 15%) is
    free, naming the containers using most; containers at their own limit and those killed (exit
    137 / out of memory) in the last 30 minutes come back as warnings. Overview › Memory shows the VM.
    Default heavy commands now include docker compose up and docker run.

Fixed

  • Agents looping on wait_for_capacity: the project's max_wait_minutes now counts across
    calls, so a Mac that stays busy ends in go ahead instead of an endless wait.
  • Stale data and a frozen window under heavy load: the collector no longer runs at utility
    priority (it waited behind saturated efficiency cores for over 25 s); the Agents page, logs and
    session buttons no longer touch project folders (often on an external disk) or LaunchServices on
    the main thread on every sample; file events, profile container reads over MCP and the volume
    re-read after an eject left the main thread. The disk-growth walk runs only on an idle Mac.
  • A memory-pressure alert while memory was free: the Overview alert follows the gate's rule (a
    lingering "warning" counts only with 35% or less available).
  • Heavy actions waiting for a busy Mac that was not busy: the kernel's memory-pressure
    "warning" lingers while half the memory is free; it now counts only with 35% or less available
    ("critical" always counts). A waiting action says so on its chip and row (waiting for room:
    and why) and Run now skips the wait.
  • An environment stuck on a busy port: when a status error names a port ("Port 19091 in use"),
    the card shows who listens on it (marked when orphaned) with Terminate, so a process left by an
    earlier start no longer blocks the environment until it is found by hand.

Commits since v0.12.0

  • fix(capacity): do not wait on a lingering pressure warning; let a waiting action run now (42c65df)
  • feat(environment): show and terminate the process holding a port an error names (dfe475b)
  • fix(capacity): read the container VM's memory; keep the app live under heavy load (1e192bd)
  • chore(release): 0.12.1 (bbd3403)

Full diff: v0.12.0...v0.12.1

Install

  1. Download CoreScope-0.12.1-macos-universal.dmg below (universal: Apple Silicon and Intel, macOS 14+).
  2. Open the DMG and drag CoreScope to Applications.
  3. The app is open source and signed ad hoc, not notarized by Apple, so macOS blocks it the first time. Open it once, then go to System Settings → Privacy & Security and click Open Anyway. Alternatively, in Terminal:
    xattr -dr com.apple.quarantine /Applications/CoreScope.app

The Intel slice is built and checked on every release but has not yet been run on an Intel Mac; reports are welcome.

Checksums (SHA-256)

1f334186fcc33c6a5181427b5a78411cc667469cc8df4f6ae557372827ab48c4  CoreScope-0.12.1-macos-universal.dmg
0b17e5979aac545ceab80c7835f32f99b2544f3315af78b78a64bf3462bc9f90  CoreScope-0.12.1-macos-universal.zip

Verify with shasum -a 256 -c SHA256SUMS.txt in the download folder.

CoreScope 0.12.0

Choose a tag to compare

@github-actions github-actions released this 21 Oct 17:32
c04cb02

Added

  • Databases › watch changes: a window per database that lists, while you use the app, rows
    created (all values), updated (before/after, changed columns) and deleted, per table and
    moment; ignore noisy tables (defaults from .corescope.yml, togglable in the window), clear,
    snapshot and compare. No triggers or binlog: kept rows compared when the server says a table
    was written (MySQL/MariaDB information_schema, PostgreSQL pg_stat). MCP db_watch_*.
  • .corescope.yml databases: — per database: server, ignore_changes, skip_data,
    before_restore / after_restore commands (any stack).
  • Restore a dump, safer: other sessions on a replaced database are closed (or waited for
    30 s), before_restore / after_restore run around it, the tables without data default to
    the project's list and the last choice, a marker table flags an incomplete restore (incomplete
    on the card), progress is read from the server, and each server has a restore history.
  • Databases › restore a dump: a mysqldump / mariadb-dump / pg_dump (plain) dump, .sql or
    .sql.gz, into an existing database (replaced after a snapshot) or a new one. It is analysed first
    — tables with exact row counts and sizes, views, triggers, routines, definers; truncated,
    multi-database or cross-database dumps are refused — and you choose which tables come without
    data (or No data above N rows), and whether to leave out triggers / owners. Streamed into the
    server's client inside the container with its credentials, in batched transactions; the dump's
    USE / CREATE DATABASE / \connect, SET GLOBAL and grants are left out, missing DEFINER accounts
    become CURRENT_USER, max_allowed_packet is raised when needed. Progress, cancel and a log that
    names the dump line of an error. CLI db analyze / db import; MCP analyze_dump,
    restore_dump, restore_status, cancel_restore.
  • Environment › recent runs: every mode start/stop and action keeps its last 5 logs (with the
    exit code appended). The environment card lists them, Show output next to a status error opens
    the latest one, and logs open in a window that follows the run, marks errors and finds with ⌘F.
    Action logs are on the Logs page too. MCP environment_runs.
  • Reorder by dragging the ≡ handle (or Move up / Move down): projects on the Projects page
    (saved in projects.json, so the floating panel and menu bar follow; MCP reorder_projects)
    and project sections on the Profiles page (MCP set_setting profiles_order).

Changed

  • Profiles page, more compact: each project section folds to one line that says what is in
    use, and an app's actions are chips grouped by kind instead of one row each — the chip is the
    button (▶ and the name), with the last result as a dot and output, artifact, cancel and the
    command in its context menu. Action and run rows highlight end to end under the pointer.

Commits since v0.11.0

  • feat(environment): keep recent run logs and show them in the app (c934496)
  • feat(profiles,projects): compact environment actions and drag to reorder (f3dad28)
  • feat(databases): restore a dump into a new or existing database (f14cf72)
  • feat(databases): watch changes, safer dump restores, databases in .corescope.yml (a14952b)
  • chore(release): 0.12.0 (625a62c)

Full diff: v0.11.0...v0.12.0

Install

  1. Download CoreScope-0.12.0-macos-universal.dmg below (universal: Apple Silicon and Intel, macOS 14+).
  2. Open the DMG and drag CoreScope to Applications.
  3. The app is open source and signed ad hoc, not notarized by Apple, so macOS blocks it the first time. Open it once, then go to System Settings → Privacy & Security and click Open Anyway. Alternatively, in Terminal:
    xattr -dr com.apple.quarantine /Applications/CoreScope.app

The Intel slice is built and checked on every release but has not yet been run on an Intel Mac; reports are welcome.

Checksums (SHA-256)

8ba011e51ea5ea8acec4af0a138d32b71c921e082fc9971fdff07b3a0bc50b0a  CoreScope-0.12.0-macos-universal.dmg
6755a7dfff73ba2f3bbdc120133e5109730baebb4c9daae5984f6a84d6ab6a8a  CoreScope-0.12.0-macos-universal.zip

Verify with shasum -a 256 -c SHA256SUMS.txt in the download folder.

CoreScope 0.11.0

Choose a tag to compare

@github-actions github-actions released this 20 Oct 14:10
af1ab94

Added

  • Projects › choose the editor: Settings › Editor and terminal sets what Open uses (the
    file's default app until chosen, CoreScope's editor, or an installed IDE/editor among VS Code,
    Cursor, Windsurf, Zed, PhpStorm and the JetBrains family, Sublime, Nova, Xcode…); IDEs open the
    file inside its project folder.
  • Open in terminal on the project card, the changes header and each worktree, with the
    terminal chosen in Settings (Terminal, iTerm2, Warp, Ghostty, kitty, Alacritty, WezTerm…); the
    terminal buttons on Processes and Agents use it too. MCP open_terminal, and projects_editor /
    projects_terminal in get_settings / set_setting.
  • Projects › quick editor: edit a file from its changes in CoreScope's own editor — line
    numbers, syntax colors, find, ⌘S, external-change warning, unsaved-changes prompt.
  • Projects › fetch, pull, push and publish in the changes header, with git's output, and the
    remote with a link to open it in the browser (credentials stripped from URLs), also on the
    project card. Core gitchanges::sync, MCP project_git_sync.
  • Databases in containers without a published port (only inside their compose network) now
    appear, grouped by compose project, matched by image, compose service or name.
  • Databases with a password: containers are read inside them with their own credentials
    (MYSQL_ROOT_PASSWORD/MARIADB_*, POSTGRES_USER, REDIS_PASSWORD, Redis --requirepass
    on stdin), so the password never leaves the container; servers on the Mac take a user and
    password saved in the Keychain, handed to the installed client through its environment.

Fixed

  • Projects › diff: long lines scroll sideways again (the lazy diff list now gets the widest
    line's width), and each file's header (counts, edit, Open) stays in view while scrolled.
  • Projects no longer flashes "No projects yet" while the list is first read.

Commits since v0.10.0

  • feat(projects): add editor choice, quick editor and git sync (2153c69)
  • feat(projects): add open-in-terminal with a configurable terminal (95dbb36)
  • fix(projects): show a spinner instead of "No projects yet" before the first read (6d993d9)
  • chore(release): 0.11.0 (e7fb01a)

Full diff: v0.10.0...v0.11.0

Install

  1. Download CoreScope-0.11.0-macos-universal.dmg below (universal: Apple Silicon and Intel, macOS 14+).
  2. Open the DMG and drag CoreScope to Applications.
  3. The app is open source and signed ad hoc, not notarized by Apple, so macOS blocks it the first time. Open it once, then go to System Settings → Privacy & Security and click Open Anyway. Alternatively, in Terminal:
    xattr -dr com.apple.quarantine /Applications/CoreScope.app

The Intel slice is built and checked on every release but has not yet been run on an Intel Mac; reports are welcome.

Checksums (SHA-256)

5abac78906d6dbc767737c710cd05c8b6643cd4dca411ef8a05c6faf5228ab9b  CoreScope-0.11.0-macos-universal.dmg
4fdf63bf67039b96b08aa1dacc6415dd43c8d0a3e438744684134f0aaad5025a  CoreScope-0.11.0-macos-universal.zip

Verify with shasum -a 256 -c SHA256SUMS.txt in the download folder.

CoreScope 0.10.0

Choose a tag to compare

@github-actions github-actions released this 19 Oct 21:32
9e0e165

Added

  • Environment controllers (all optional in .corescope.yml under environment:, older files
    unchanged; see docs/ENVIRONMENT-CONTROLLER.md): each app of a
    project's own controller is listed with the modes it can come up in (modes, one at a time), the
    command that takes it down, containers to watch and its actions; mode commands do the whole
    operation while CoreScope only watches (no second Docker operation, no race with
    docker compose up -d, Stop runs only that app's down). Services checks follow the profiles,
    app or status component that need them (profiles:, app:, component:), so an app that is
    switched off raises no alert even when a proxy keeps its port open, with the new states
    starting, external and unknown (never up, never off). A status command's versioned JSON
    is read every 30 s with a short timeout and reconciled with what CoreScope started (selection
    changed in a terminal, CoreScope restarted, stale readings). One-off actions (setup, backup,
    restore) have their own timeout, log, artifact, cancel and, for restores, a preview the user
    confirms. MCP: environment_status, list_actions, run_action, cancel_action; each app mode
    is a profile project/app:mode for start_profile / stop_profile.

Changed

  • Profiles is grouped by project: each project's environment card shows a summary (apps
    selected, expected components ready, problems) and one folded row per app, with its state in a
    fixed column, a Start menu with its modes and Stop, and inside it the app's components and
    actions by kind (kind:, otherwise guessed from the names); profile cards fold their commands and containers while stopped, show
    the profile's own name with its state in a fixed column, and stopped profiles of a project fold
    into one line when there are more than three. Components whose state the controller could not
    read are summed up in one line and make the app unknown, not starting; when no container
    engine answers at all (Docker switched off) the environment simply shows as off, without errors
    or alerts. What is open is remembered.
  • Menu bar: every value has its own SF Symbol (cpu, memory chip, disk I/O arrows, network,
    thermometer, internal drive for the SSD, terminal for Codex, sparkle for Claude) next to it,
    also in the compact format, and the item's tooltip explains each one; the same icons are in
    Settings. Settings › Menu bar is a single list (on/off, what it shows, order) instead of the
    toggles followed by an unexplained copy of the same items.
  • Lower cost: environment status reads use /bin/sh with the login environment read once
    instead of an interactive login shell every 30 s, and slow to every 2 min with no window open;
    the floating panel is released when turned off and the menu bar window stops rendering while
    closed (both kept updating on every sample); freed memory is returned to macOS after the window
    closes and every 5 min while closed.

Fixed

  • An ejected volume leaves Storage at once instead of up to 30 s later.
  • Language: System followed the language last chosen in CoreScope instead of macOS's.

Commits since v0.9.0

  • feat: environment controllers, lighter Profiles and menu bar, lower cost (d1fcef8)
  • chore(release): 0.10.0 (960bf1a)
  • feat: environment apps with modes, menu bar icons, Docker off is not an error (117aa63)

Full diff: v0.9.0...v0.10.0

Install

  1. Download CoreScope-0.10.0-macos-universal.dmg below (universal: Apple Silicon and Intel, macOS 14+).
  2. Open the DMG and drag CoreScope to Applications.
  3. The app is open source and signed ad hoc, not notarized by Apple, so macOS blocks it the first time. Open it once, then go to System Settings → Privacy & Security and click Open Anyway. Alternatively, in Terminal:
    xattr -dr com.apple.quarantine /Applications/CoreScope.app

The Intel slice is built and checked on every release but has not yet been run on an Intel Mac; reports are welcome.

Checksums (SHA-256)

f7200fed803d9da71454fbb8e56a23a9cadac40446c341368e44f2d837f70da4  CoreScope-0.10.0-macos-universal.dmg
63dc658d5ed919c4d4f5853beb46a11add30a9a82842a3ae1d9f92c16dd162a9  CoreScope-0.10.0-macos-universal.zip

Verify with shasum -a 256 -c SHA256SUMS.txt in the download folder.

CoreScope 0.9.0

Choose a tag to compare

@github-actions github-actions released this 19 Oct 01:21
6acaac6

Added

  • Performance audit: MCP performance_audit sweeps what CoreScope already knows and ranks
    what the user could stop, remove or turn off — orphans, heavy apps and processes, stuck or
    power-hungry agent sessions, started profiles, idle and stopped containers, reclaimable space from the
    cached Cleanup scan and plan, folders Disk growth saw grow, Services checks that are always down,
    and CoreScope's own costliest switches (collector interval, floating panel, Codex and Claude live
    limits). Each finding carries what it would give back (CPU, memory, disk, watts), how sure
    CoreScope is, and the tool and arguments that act on it; the audit never acts, never scans the
    disk, and lists stale sources with the tool that refreshes them. Ranking weighs whatever is tight
    right now (memory pressure, a nearly full disk, battery). The top findings also show on the
    Overview as To lighten the Mac, each row opening the page where to act.
  • Remove unused Docker volumes from the Containers page: a trash button per volume and
    Remove unused… for all of them, each behind a confirmation that names the volumes, their sizes
    and that the data is deleted for good. Only volumes no container references (running or
    stopped) can be removed; volumes in use say by which containers, and the core re-checks right
    before DELETE /volumes/{name} (never forced) over the same local socket. Per-volume results,
    then the list refreshes. Rows show when each volume was created, anonymous (64-hex) volumes and
    what the labels say made them (compose project and volume), and database-like volumes
    (MySQL/PostgreSQL/Redis) warn that no snapshot is possible without a container. MCP
    list_volumes and remove_volumes (a dry run unless confirm: true; in-use volumes are
    always refused).
  • Projects › Remove unused worktrees and branches: Remove unused… on each repository's card
    (Branches and Worktrees sections, card menu) opens a confirmation listing exactly what goes —
    linked worktrees whose branch is merged into the default branch, whose upstream is gone or whose
    folder is gone, and local branches merged into the default branch — with path, branch, size, why
    each qualifies and a checkbox per item. Never the main or current working tree, a worktree a
    process works in, a locked one, or a branch checked out in a worktree that stays; a worktree
    with uncommitted changes is shown and skipped unless a separate option (off by default) allows
    --force. A merged branch can go together with its worktree. Uses git worktree remove and
    git branch -d (never -D); the core checks every item again against fresh state before
    removing and reports each result (removed, refused with the rule, or git's error). MCP
    project_unused (dry run with reasons) and project_remove_unused (same rules, never forced or
    dirty).

Changed

  • Services tell "not running" apart from "down": checks are grouped by project (checks added
    in the app in their own group) with a per-group summary. A check from a project's
    .corescope.yml whose profile is not running and whose port nobody listens on is gray "not
    running", with a Start button for the profile; while the app is off it is not probed at all
    (checking resumes when the profile starts or the port opens), no longer counts against uptime
    and sends no down notifications; red is kept for what should be up (profile running, port listening but
    failing, checks added by hand). The tooltip explains each state. Checks and whole groups can be
    paused. MCP list_services / check_services report status (up, answered_with_error,
    down, not_running, paused, not_checked_yet), group, monitored and explanation; new MCP
    pause_service.
  • The Worktrees and Local branches sections group their rows into In use, Removable and
    Other, show the removable count and size next to the title, collapse long groups, and share
    badges (merged, upstream gone, in use) in the same order and colors.

Commits since v0.8.1

  • feat(mcp): performance_audit, ranked things to stop, remove or turn off (c08a84c)
  • feat(containers): remove unused Docker volumes, with MCP list_volumes and remove_volumes (964128c)
  • feat(services): tell "not running" apart from "down", grouped by project (ec7b9aa)
  • feat(projects): remove unused worktrees and branches, grouped card sections (7e3e947)
  • feat(services): don't probe a project's app while it is off (56a9b15)
  • chore(release): 0.9.0 (ed91b5e)

Full diff: v0.8.1...v0.9.0

Install

  1. Download CoreScope-0.9.0-macos-universal.dmg below (universal: Apple Silicon and Intel, macOS 14+).
  2. Open the DMG and drag CoreScope to Applications.
  3. The app is open source and signed ad hoc, not notarized by Apple, so macOS blocks it the first time. Open it once, then go to System Settings → Privacy & Security and click Open Anyway. Alternatively, in Terminal:
    xattr -dr com.apple.quarantine /Applications/CoreScope.app

The Intel slice is built and checked on every release but has not yet been run on an Intel Mac; reports are welcome.

Checksums (SHA-256)

d74e1d93c5a2c82ac2f517e7f8c48c4b42335708edf70a34fa190fa37f18c0e0  CoreScope-0.9.0-macos-universal.dmg
77efe5b2db61198d2a91f4e55c15e7b0cf7f66a794df5929bfc310bab1e93ec7  CoreScope-0.9.0-macos-universal.zip

Verify with shasum -a 256 -c SHA256SUMS.txt in the download folder.

CoreScope 0.8.1

Choose a tag to compare

@github-actions github-actions released this 19 Oct 00:32
2b578f8

Added

  • Current Claude limits (opt-in): Settings › Agents › Read the current limit through Claude
    Code
    (or the button on the limits card) runs Claude Code's own /usage (claude -p /usage, no
    model turn, no tokens, no session saved, hooks off) every 5 minutes while a Claude session is
    working and every 30 minutes otherwise, so the panel, menu bar and overview show the same 5-hour
    and weekly numbers, with reset times, as Claude Code and Claude Desktop — instead of a Claude
    Desktop sample that can be hours old. Claude Code asks Anthropic with its own login; CoreScope
    reads no credentials. MCP usage_limits adds age_seconds and live_read for Claude and Codex.

Changed

  • The Claude limit shown is now the newest of Claude Code's /usage, the status line and Claude
    Desktop's samples (one with reset times wins within 5 minutes); an old status-line reading no
    longer hides a newer Claude Desktop sample.

Commits since v0.8.0

  • feat(agents): current Claude limits through Claude Code's /usage (opt-in) (1f15a00)
  • chore(release): 0.8.1 (700a2f4)

Full diff: v0.8.0...v0.8.1

Install

  1. Download CoreScope-0.8.1-macos-universal.dmg below (universal: Apple Silicon and Intel, macOS 14+).
  2. Open the DMG and drag CoreScope to Applications.
  3. The app is open source and signed ad hoc, not notarized by Apple, so macOS blocks it the first time. Open it once, then go to System Settings → Privacy & Security and click Open Anyway. Alternatively, in Terminal:
    xattr -dr com.apple.quarantine /Applications/CoreScope.app

The Intel slice is built and checked on every release but has not yet been run on an Intel Mac; reports are welcome.

Checksums (SHA-256)

93d3e41749e8431705cfc36fca5183d80eb72548436fd360a4cbfdcd6c60cef8  CoreScope-0.8.1-macos-universal.dmg
0c42ecaef4e967ee059fbb4e2bcd1de884d1d040fa94d38104a38722693d1d4f  CoreScope-0.8.1-macos-universal.zip

Verify with shasum -a 256 -c SHA256SUMS.txt in the download folder.

CoreScope 0.8.0

Choose a tag to compare

@github-actions github-actions released this 18 Oct 23:56
beaf42e

Added

  • Projects page (phase 1 of the Projects epic): register local repositories by folder, with a
    default name from .corescope.yml (or the folder) that stays editable; the file is validated
    with errors placed on their line and summarized (profiles, ports, Services, logs, capacity), a
    minimal one is offered when missing (decline and nothing is added); git root, linked worktree
    and main repository, subfolder, branch or detached HEAD; git init after a confirmation;
    rename and remove (files are never touched). corescope://open/projects, corescope projects,
    MCP list_projects. The list lives in Application Support/CoreScope/projects.json and is part
    of the settings backup.
  • Projects › Changes and commit (phase 2): a commit panel per repository — branch, upstream
    and ahead/behind, last commit; files grouped into Conflicts, Staged, Modified, New and Removed
    with status and +/− lines (git status --porcelain=v2 plus git diff --numstat); checkbox
    stage/unstage, multi-select, Stage all / Unstage all; unified diff; open in an installed
    editor or Finder; Discard changes… after a confirmation (tracked files back to HEAD, new files
    to the Trash); commit with ⌘↩, disabled without a message, staged files or with conflicts, hooks
    and signing as configured and a failing hook's output shown. index.lock and conflicts are
    explained, never a crash. The diff reads like Zed's uncommitted-changes view: all changes
    stacked by file (or the selected files) under pinned headers with a stage checkbox and Open,
    green/red/yellow gutter bars, line numbers, syntax colors, folded unchanged stretches and
    ↑/↓ between changes. Each card shows the change counts and ahead/behind without opening it,
    live while the page is open. FSEvents refreshes the panel only while it is open (.git reduced to
    HEAD/index/refs, .gitignored paths dropped, at most two reloads a second), measured as
    Projects (git) in CoreScope's own cost. corescope status, corescope://project/NAME, MCP
    project_git_status, project_git_diff, project_git_stage, project_git_commit,
    project_git_discard.
  • Projects › Branches and worktrees (phase 3, view only): collapsible sections on each
    repository's card, closed by default and read only when opened. Local branches (git branch --format): current first, last commit, ahead/behind or upstream gone, checked out in another
    worktree. Worktrees (git worktree list --porcelain, main included): branch, agent, merged,
    uncommitted changes, process working in it, lock, folder gone, last commit and a size measured
    in the background and cached for 10 minutes, without counting nested worktrees twice. Removal
    stays on the Cleanup page, linked from the section. corescope branches, corescope worktrees
    accepts a project name, MCP project_branches / project_worktrees.
  • Demo mode also anonymizes project names and branch names on the Projects page.
  • Projects in the floating panel and the menu bar (phase 4): Show in panel per project (card
    menu, the panel's menu, MCP set_project) adds a row with name, branch and change counts to
    every panel layout and to the menu bar popover, read when they appear and kept live by file
    watchers only while visible; a click opens the project's changes in a window of their own.
  • Change notifications per project (phase 5, opt-in, off by default): every 1, 5 or 15 min
    (card menu, Settings › Notifications, MCP set_project). Watchers only mark a project as
    touched; at its interval it is read once and compared with the last notification (core
    delta, tested), so it says what moved — new/modified/staged/deleted/conflict counts, a new
    commit or a branch switch — and never fires for a save that changes nothing. Clicking opens the
    changes.
  • AI commit message (phase 6, opt-in, off by default): Generate message in the changes
    panel writes the message from the staged diff only (core commit_context: lockfiles and
    binaries left out, cut at a configurable size, tested) with the provider set in Settings › AI:
    Claude Code claude -p or Codex codex exec already signed in (no tools, no MCP, outside any
    project), the Anthropic / OpenAI (Responses) / Gemini API with the key in the Keychain only, or
    Ollama / LM Studio. Editable instructions (Conventional Commits, title up to 72 characters),
    message language, model as free text with suggestions, Test connection, and a one-time
    consent per provider showing exactly what is sent. The message is editable and nothing commits
    on its own. MCP generate_commit_message. CONTRIBUTING and Privacy document the exception to
    local-only.
  • Agents follow the project's .corescope.yml on their own: Settings › MCP server › Agent
    hooks
    installs, per agent (Claude Code ~/.claude/settings.json, Codex ~/.codex/hooks.json,
    each backed up first), a SessionStart hook (corescope context --hook) that gives each new
    session a summary of the nearest .corescope.yml — capacity rule and heavy commands, ports,
    profiles, services, logs, a snapshot before wiping a database, or the file's error with its
    line — and the capacity gate (corescope gate), which now also covers Codex (same payload). The
    settings show whether Codex trusts the hooks (it runs user hooks only after /hooks). For
    agents without hooks: MCP agent_context, and a marked section in the project's CLAUDE.md /
    AGENTS.md (Agent instructions… on the project card, corescope context --write, MCP
    write_agent_instructions), leaving the rest of the file alone. MCP agent_hooks reports and
    changes the hooks; the MCP instructions ask agents to read agent_context when no session
    context came.

Fixed

  • The Navigate menu gives ⌘1–⌘9 to the first nine pages only; more pages would have crashed it.

Commits since v0.7.0

  • feat(projects): phase 1, register projects with .corescope.yml and git (e59a4f8)
  • feat(projects): phase 2, changes and manual commit (8c9cea0)
  • feat(projects): phase 3, branches and worktrees (974b726)
  • feat(agents): project context and capacity hooks for Claude Code and Codex (23f665e)
  • fix(settings): agent hooks as plain form rows (the grid overlapped the text below) (b9a67bc)
  • refactor(projects): RepoWatcher shared by the changes panel; one-call git summary for compact rows (485bf56)
  • feat(projects): Zed-style diff and change counts on each card (60cef08)
  • feat(projects): phase 4, projects in the floating panel and the menu bar (79c75c4)
  • feat(projects): phase 5, change notifications per project (3995bfe)
  • feat(projects): phase 6, AI commit message (opt-in) (ab60eef)
  • chore(release): 0.8.0 (85f96f8)

Full diff: v0.7.0...v0.8.0

Install

  1. Download CoreScope-0.8.0-macos-universal.dmg below (universal: Apple Silicon and Intel, macOS 14+).
  2. Open the DMG and drag CoreScope to Applications.
  3. The app is open source and signed ad hoc, not notarized by Apple, so macOS blocks it the first time. Open it once, then go to System Settings → Privacy & Security and click Open Anyway. Alternatively, in Terminal:
    xattr -dr com.apple.quarantine /Applications/CoreScope.app

The Intel slice is built and checked on every release but has not yet been run on an Intel Mac; reports are welcome.

Checksums (SHA-256)

dbd3fa30238fbc0a7c89784eff632122c9726b91dcd540a396f9890d49cb525c  CoreScope-0.8.0-macos-universal.dmg
b21781da2f96d449efdc7f56c72d2d1e7182fc7c978afbd663d65888a2a34545  CoreScope-0.8.0-macos-universal.zip

Verify with shasum -a 256 -c SHA256SUMS.txt in the download folder.

CoreScope 0.7.0

Choose a tag to compare

@github-actions github-actions released this 18 Oct 15:17
f99dc76

Added

  • Machines › why a systemd unit failed: the units in a Failed systemd units alert are
    clickable. CoreScope runs systemctl status <unit> --no-pager -n 0 and the unit's journal over
    your BatchMode ssh (read-only, no sudo, unit name validated), groups the last run's
    error/failed lines with counts and shows a hint for well-known causes — logrotate
    unknown user (a config left for a deleted site user, e.g. Laravel Forge's
    /etc/logrotate.d/forge-*), logrotate duplicate log entry, postrotate failures and nginx -t
    errors. Says when journald hides system logs from the ssh user (not in adm/systemd-journal).
    Hints only explain; CoreScope never changes the server.
  • MCP explain_failed_unit {host, unit}: the same status, grouped errors and hints for agents.
  • Storage: processes using the disk now; SSD health from NVMe SMART (wear, spare, data written
    and read, power-on hours, cycles, unsafe shutdowns, media errors, verdict); What grew today
    opens each folder to the subfolders that grew and links to the cleanup plan; a safe cleanup
    plan
    for caches tools re-create, with estimates, the exact command or folders and busy-tool
    checks; large files in the home folder and its linked drives (one filesystem per root,
    cloud storage and node_modules skipped, app-managed files only shown); Eject… shows the
    processes holding a volume and runs diskutil eject. CLI top --disk, disk-health,
    space --plan, large-files, eject-check; MCP disk_health, cleanup_plan,
    run_cleanup_plan, large_files, volume_holders, eject_volume.
  • Databases: Open in TablePlus, Redis Insight, Sequel Ace, Postico or DBeaver and Copy DSN;
    Redis keys by prefix (sampled, adaptive depth) with keys without TTL and FLUSHDB after a
    confirmation; snapshots of MySQL/MariaDB and PostgreSQL databases (inside a container with
    its own credentials, never seen by CoreScope) and restore. CLI db snapshot|snapshots|restore| redis; MCP db_snapshot, db_snapshots, db_restore, redis_keyspace, redis_flush; the MCP
    instructions ask agents to snapshot before migrate:fresh or db:wipe.
  • Claude limits without the status line: from Claude Desktop's own samples
    (plan-usage-history.json), local and credential-free. Pace per limit window (projected at
    the reset, or when it reaches 100%). MCP usage_limits.
  • Settings backup outside ~/Library (default ~/.corescope/backups, or a folder you pick),
    written a few seconds after a change; a launch with empty settings offers to restore it. MCP
    backup_settings.

Fixed

  • Status line data that carries the reset epoch in used_percentage is ignored instead of shown.
  • Sizes and rates read "0 KB" instead of "Zero KB".

Commits since v0.6.0

  • feat(machines): explain why a failed systemd unit failed (ff80a5a)
  • feat(storage): SSD health, who's writing, growth drill-down, cleanup plan, large files, eject (17fddd3)
  • feat(databases): open in TablePlus/Redis Insight, Redis by prefix, snapshots (59a64da)
  • feat(agents): Claude limits from Claude Desktop, pace, MCP usage_limits (c1dff46)
  • feat(settings): automatic settings backup outside ~/Library, restore on launch (4bde9b0)
  • chore(release): 0.7.0 (c01e9b2)

Full diff: v0.6.0...v0.7.0

Install

  1. Download CoreScope-0.7.0-macos-universal.dmg below (universal: Apple Silicon and Intel, macOS 14+).
  2. Open the DMG and drag CoreScope to Applications.
  3. The app is open source and signed ad hoc, not notarized by Apple, so macOS blocks it the first time. Open it once, then go to System Settings → Privacy & Security and click Open Anyway. Alternatively, in Terminal:
    xattr -dr com.apple.quarantine /Applications/CoreScope.app

The Intel slice is built and checked on every release but has not yet been run on an Intel Mac; reports are welcome.

Checksums (SHA-256)

e3219ef26580703c7c8e866c1dc030247069d62568d9602b74aa1ff0a1707535  CoreScope-0.7.0-macos-universal.dmg
76f0b21608f60889416ab171a8f386cf09c7c947d6e566166a7ea2b1bb34cda0  CoreScope-0.7.0-macos-universal.zip

Verify with shasum -a 256 -c SHA256SUMS.txt in the download folder.