diff options
| -rw-r--r-- | README.md | 270 | ||||
| -rw-r--r-- | SPONSORS.md | 4 | ||||
| -rw-r--r-- | assets/sponsors/terminal-trove.png | bin | 0 -> 8077 bytes | |||
| -rw-r--r-- | assets/sponsors/terminal-trove.svg | 5 |
4 files changed, 33 insertions, 246 deletions
@@ -6,7 +6,16 @@ </p> <p align="center"> - <a href="https://herdr.dev">herdr.dev</a> · <a href="#install">install</a> · <a href="#quick-start">quick start</a> · <a href="#supported-agents">supported agents</a> · <a href="https://herdr.dev/docs/integrations/">integrations</a> · <a href="https://herdr.dev/docs/configuration/">configuration</a> · <a href="https://herdr.dev/docs/socket-api/">socket api</a> · <a href="#sponsors">sponsor</a> + <a href="https://herdr.dev">herdr.dev</a> · <a href="#install">install</a> · <a href="https://herdr.dev/docs/quick-start/">quick start</a> · <a href="https://herdr.dev/docs/">docs</a> · <a href="#sponsors">sponsors</a> +</p> + +<p align="center"> + <a href="LICENSE"><img src="https://img.shields.io/badge/license-AGPL--3.0-666666?labelColor=333333" alt="AGPL 3.0 license" /></a> + <a href="https://github.com/ogulcancelik/herdr/releases"><img src="https://img.shields.io/github/downloads/ogulcancelik/herdr/total?labelColor=333333&color=666666" alt="total GitHub release downloads" /></a> + <a href="https://github.com/ogulcancelik/herdr/stargazers"><img src="https://img.shields.io/github/stars/ogulcancelik/herdr?labelColor=333333&color=666666&logo=github" alt="GitHub stars" /></a> + <a href="https://github.com/ogulcancelik/herdr/releases/latest"><img src="https://img.shields.io/github/v/release/ogulcancelik/herdr?label=release&labelColor=333333&color=666666" alt="latest stable release" /></a> + <a href="https://formulae.brew.sh/formula/herdr"><img src="https://img.shields.io/homebrew/v/herdr?label=homebrew&labelColor=333333&color=666666" alt="Homebrew version" /></a> + <a href="https://x.com/herdrdev"><img src="https://img.shields.io/badge/follow-%40herdrdev-000000?logo=x&logoColor=white" alt="follow @herdrdev on X" /></a> </p> --- @@ -15,7 +24,12 @@ https://github.com/user-attachments/assets/043ec09f-4bdd-41d5-aee0-8fda6b83e267 **agent multiplexer that lives in your terminal.** -workspaces, tabs, panes. mouse-native: click, drag, split. every agent at a glance: blocked, working, done. detach and reattach, agents keep running. no gui app, no electron, no mac-only native wrapper. you see the agent's own terminal, not someone's interpretation of it. +- **every agent at a glance** — blocked, working, done. real terminal views, not a wrapped interpretation. +- **detach, agents keep running** — reattach from any terminal, or over ssh. sessions survive restarts. +- **agents can use herdr too** — a pure socket api: agents spawn panes, read output, wait on each other. [agent skill →](https://herdr.dev/docs/agent-skill/) +- **keyboard and mouse, both first-class** — tmux-style prefix keys *and* click, drag, split. pick per moment, not per tool. +- **plugins** — extend panes and workflows. [plugins →](https://herdr.dev/docs/plugins/) +- **one rust binary, no electron** — runs in whatever terminal you already use. --- @@ -25,254 +39,29 @@ workspaces, tabs, panes. mouse-native: click, drag, split. every agent at a glan curl -fsSL https://herdr.dev/install.sh | sh ``` -on windows preview beta: - -```powershell -powershell -ExecutionPolicy Bypass -c "irm https://herdr.dev/install.ps1 | iex" -``` - -or install with homebrew: - -```bash -brew install herdr -``` - -or install with mise: - -```bash -mise use -g herdr -``` - -if mise reports `herdr not found in mise tool registry`, update mise and retry. older mise versions predate the herdr registry entry; `mise use -g github:ogulcancelik/herdr` works as a temporary fallback. - -or download the stable Linux/macOS binary from [releases](https://github.com/ogulcancelik/herdr/releases). Native Windows binaries are preview-only beta builds. - -## quick start - -Start Herdr in the directory where the work lives: - -```bash -herdr -``` - -Herdr starts or attaches to one background session server. When a session has no workspaces, Herdr opens one automatically. Run an agent in the root pane. Press `ctrl+b`, then `shift+n` to create another workspace, `ctrl+b`, then `v` or `minus` to split panes, `ctrl+b`, then `c` to create a tab, and `ctrl+b`, then `w` to switch workspaces. - -Press `ctrl+b q` to detach the client. The server and pane processes keep running. Open another terminal and run `herdr` again to reattach. - -## core concepts - -**Server and client.** By default, `herdr` attaches to a background server. Detaching closes only the client. `herdr server stop` stops the default server and kills its panes. Named sessions are separate server namespaces: use `herdr session attach work`, `herdr session stop work`, and `herdr session list` when you want fully separate runtime state. - -**Workspaces, tabs, panes.** A workspace is the project-level container. Tabs group panes inside a workspace. Panes are real terminal processes, not rewritten agent views. - -**Copy.** Herdr copies pane text, not the sidebar. Drag-select inside a pane, double-click a word or token, or press `prefix+[` for keyboard copy mode. In copy mode, move with `h/j/k/l`, `w/b/e`, and `{`/`}`, start selection with `v` or Space, copy with `y` or Enter, and leave with `q` or Esc. In PuTTY and some SSH terminals, hold `Shift` while dragging to use the terminal's own selection, and `Shift` + right click to paste. - -**Update and restore.** `herdr update` installs a new binary, but a running server keeps using the old process until it is stopped or handed off. Stop the old server to use the new version. Stopping exits pane processes. Run `herdr server stop`, then run `herdr` again for the default session. For a named session, run `herdr session stop <name>`, then run `herdr session attach <name>` again. `herdr update --handoff` is experimental and tries to move live panes, including foreground processes such as dev servers, from the old server to the new one. With current official integrations installed, supported agent panes can restart from their native agent sessions after a server restart or update. - -**Keybindings.** Herdr uses explicit keybinding strings. `prefix+n` means press the configured prefix, then `n`. `ctrl+alt+n`, `cmd+k`, `alt+1`, and function-key chords are direct terminal-mode shortcuts and do not need the prefix. Plain direct printable keys such as `n` steal normal typing, so use `prefix+n` unless you intentionally want a modifier-gated direct binding. - -**Agent awareness.** The sidebar shows blocked, working, done, and idle states. Detection works with process names and terminal output by default. Official integrations can add native session identity for restore, semantic state reports, or both. - -## update - -Herdr notifies you when a new version is available. Run manually: - -```bash -herdr update -``` - -`herdr update` is for installs managed by Herdr's own installer. Homebrew, mise, and Nix installs update through `brew upgrade herdr`, `mise upgrade herdr`, or your Nix workflow, then use the same stop-and-run-again flow if a session is still running the old server. Linux and macOS direct installs can opt into development preview builds with `herdr channel set preview` and return to stable with `herdr channel set stable`. Windows beta installs are preview-only for now. See [install docs](https://herdr.dev/docs/install/) and [session state docs](https://herdr.dev/docs/session-state/) for the full update, restart, restore, and handoff matrix. +or `brew install herdr` · `mise use -g herdr` · windows beta: `powershell -ExecutionPolicy Bypass -c "irm https://herdr.dev/install.ps1 | iex"` · [binaries](https://github.com/ogulcancelik/herdr/releases) -Linux and macOS direct installs use the stable update channel by default. Windows beta installs default to preview. To test preview builds from `master` before the next stable release: +then start it where the work lives: ```bash -herdr channel set preview -``` - -To return Linux and macOS direct installs to stable: - -```bash -herdr channel set stable -``` - -For direct installs, changing channels also checks that channel and installs its latest binary. If that update fails, run `herdr update` to retry from the configured channel. - -Preview is only for direct installs managed by Herdr's updater. Homebrew, mise, and Nix stay on stable and update through their package managers. - -## how it compares - -| | tmux | gui managers | herdr | -|--------------------------|------|--------------|-------| -| persistent sessions | ✓ | — | ✓ | -| detach / reattach | ✓ | — | ✓ | -| panes, tabs, workspaces | ✓ | ✓ | ✓ | -| agent awareness | — | ✓ | ✓ | -| lives in your terminal | ✓ | — | ✓ | -| real terminal views | ✓ | — | ✓ | -| mouse-native | — | ✓ | ✓ | -| lightweight binary | ✓ | — | ✓ | -| agents can orchestrate | ? | ? | ✓ | - -tmux gives you persistence and panes, but it was built before agents existed. gui managers show agent state, but they make you leave your terminal and use their wrapped view. herdr is persistence and awareness in one tool that stays out of your way. - -## remote and attach - -Herdr works over normal SSH. Run it on the remote host, detach, and reattach later: - -``` -ssh you@yourserver herdr ``` -You can also attach from your local terminal without opening a shell first: +run your agents, split panes, walk away. `ctrl+b q` detaches, `herdr` reattaches. [quick start →](https://herdr.dev/docs/quick-start/) -```bash -herdr --remote workbox -herdr --remote ssh://you@yourserver:2222 -``` - -Remote attach adds fallback SSH keepalives and connection reuse by default while preserving your own SSH config. Set `[remote].manage_ssh_config = false` to use plain `ssh`. - -Direct attach connects your current terminal to one server-owned terminal: - -```bash -herdr agent attach <target> -herdr terminal attach <terminal_id> -``` - -See [persistence and remote docs](https://herdr.dev/docs/persistence-remote/) for remote keybinding, named-session, and handoff details. - -## agent awareness - -the sidebar shows which agents are blocked, working, or done. workspaces roll up to their most urgent state so you can scan the full list at a glance. - -states: - -- 🔴 **blocked** — agent needs input or approval -- 🟡 **working** — agent is actively running -- 🔵 **done** — work finished, you have not looked at it yet -- 🟢 **idle** — done and seen - -detection works by reading foreground process and terminal output. zero config, no hooks required. official claude code, codex, github copilot cli, devin, droid, kimi code cli, qodercli, and cursor agent cli integrations provide session restore identity; pi, omp, kimi code cli, opencode, kilo code cli, hermes, mastracode, and custom socket integrations can report their own state. - -## lives in your terminal - -not a gui window, not a web dashboard, not electron. herdr runs inside whatever terminal you already use. single rust binary, no dependencies. works inside tmux as the outer terminal environment. - -## what you get - -- **workspaces** — organized around git repos or folder names, each with its own tabs and panes -- **tabs** — first-class in the socket api and cli -- **copy-friendly** — drag-select pane text, double-click tokens, or use keyboard copy mode with `prefix+[`, `h/j/k/l`, `{`/`}`, `v`, and `y` -- **notifications** — sounds and toasts for background events; tab-aware suppression -- **18 built-in themes** — catppuccin, terminal, tokyo night, gruvbox, one, solarized, kanagawa, rosé pine, vesper, and light variants for the main palettes -- **session persistence** — pane processes survive client detach; sessions restore panes after full restart, with opt-in recent screen history - -## agents can use herdr too - -The local Unix socket lets agents create workspaces, split or zoom panes, spawn helpers, read output, and wait for state changes. Install the reusable skill with: - -```bash -npx skills add ogulcancelik/herdr --skill herdr -g -``` - -Start with the [agent skill docs](https://herdr.dev/docs/agent-skill/), [socket API docs](https://herdr.dev/docs/socket-api/), and [`SKILL.md`](./SKILL.md). - -## supported agents - -automatic detection works out of the box. process name matching plus terminal output heuristics. - -| agent | idle / done | working | blocked | -|-------|-------------|---------|---------| -| [pi](https://pi.dev) | ✓ | ✓ | partial | -| [claude code](https://docs.anthropic.com/en/docs/claude-code) | ✓ | ✓ | ✓ | -| [codex](https://github.com/openai/codex) | ✓ | ✓ | ✓ | -| [droid](https://factory.ai) | ✓ | ✓ | ✓ | -| [amp](https://ampcode.com) | ✓ | ✓ | ✓ | -| [opencode](https://github.com/anomalyco/opencode) | ✓ | ✓ | ✓ | -| [grok cli](https://x.ai/grok) | ✓ | ✓ | ✓ | -| [hermes agent](https://github.com/NousResearch/hermes-agent) | ✓ | ✓ | ✓ | -| [kilo code cli](https://kilo.ai/) | ✓ | ✓ | ✓ | -| [devin cli](https://docs.devin.ai/cli) | ✓ | ✓ | ✓ | -| cursor agent | ✓ | ✓ | ✓ | -| antigravity cli | ✓ | ✓ | ✓ | -| kimi code cli | ✓ | ✓ | ✓ | -| [github copilot cli](https://github.com/features/copilot) | ✓ | ✓ | ✓ | -| [qodercli](https://qoder.com/cli) | ✓ | ✓ | ✓ | -| [kiro cli](https://kiro.dev/docs/cli/) | ✓ | ✓ | — | - -detected but not fully tested: gemini cli, cline. - -for agents outside the built-in list, herdr still works as a terminal multiplexer with workspaces, panes, and tiling. custom integrations can report agent labels over the socket api. see the [socket api docs](https://herdr.dev/docs/socket-api/). - -### direct integrations - -official integrations have two roles. claude code, codex, github copilot cli, devin, droid, qodercli, and cursor agent cli report session identity for native restore, while their state still comes from screen detection. pi, omp, kimi code cli, opencode, kilo code cli, hermes, and mastracode report both semantic state and session identity. install with: - -```bash -herdr integration install pi -herdr integration install omp -herdr integration install claude -herdr integration install codex -herdr integration install copilot -herdr integration install devin -herdr integration install droid -herdr integration install kimi -herdr integration install opencode -herdr integration install kilo -herdr integration install hermes -herdr integration install mastracode -herdr integration install qodercli -herdr integration install cursor -``` - -see the [integrations docs](https://herdr.dev/docs/integrations/) for setup details. - -## keybindings - -Press `ctrl+b` to enter prefix mode. Default actions are prefix-first and tmux-like: - -| key | action | -|-----|--------| -| `prefix+c` | new tab | -| `prefix+n` / `prefix+p` | next / previous tab | -| `prefix+1..9` | switch tab | -| `prefix+w` | workspace navigation | -| `prefix+g` | session navigator | -| `prefix+shift+n` | new workspace | -| `prefix+shift+g` | new worktree | -| `prefix+shift+w` | rename workspace | -| `prefix+shift+d` | close workspace | -| `prefix+h/j/k/l` | focus pane | -| `prefix+shift+h/j/k/l` | swap pane | -| `prefix+v` / `prefix+minus` | split pane | -| `prefix+x` | close pane | -| `prefix+b` | toggle sidebar | -| `prefix+z` | zoom pane | -| `prefix+r` | resize mode | -| `prefix+q` | detach | - -Mouse is supported throughout. Resize mode uses `h`/`l` for width, `j`/`k` for height, and `esc` to exit. Full syntax, optional actions, indexed bindings, and custom command bindings live in the [configuration docs](https://herdr.dev/docs/configuration/). +## docs -## configuration +everything lives at [herdr.dev/docs](https://herdr.dev/docs/): [quick start](https://herdr.dev/docs/quick-start/) · [concepts](https://herdr.dev/docs/concepts/) · [supported agents](https://herdr.dev/docs/agents/) · [keyboard](https://herdr.dev/docs/keyboard/) · [configuration](https://herdr.dev/docs/configuration/) · [session state](https://herdr.dev/docs/session-state/) · [remote](https://herdr.dev/docs/persistence-remote/) · [integrations](https://herdr.dev/docs/integrations/) · [plugins](https://herdr.dev/docs/plugins/) · [socket api](https://herdr.dev/docs/socket-api/) -config file: `~/.config/herdr/config.toml` +## sponsors -```bash -herdr --default-config # print full default config -``` +herdr is built full-time, in the open. sponsoring directly funds development, stability, and the path to a real agent runtime. -In-app settings cover theme, sound, and toast preferences. Herdr writes logs under `~/.config/herdr/`; in persistent session mode, `herdr-client.log` and `herdr-server.log` are usually the useful files. Full configuration and logging details live in the [configuration docs](https://herdr.dev/docs/configuration/). +### gold -## docs +<a href="https://terminaltrove.com/"><img src="assets/sponsors/terminal-trove.png" alt="Terminal Trove" width="200" /></a> -- [quick start](https://herdr.dev/docs/quick-start/) — first session, panes, copy, and named sessions -- [install](https://herdr.dev/docs/install/) — install, update, Homebrew, mise, and Nix -- [session state](https://herdr.dev/docs/session-state/) — detach, restart restore, agent restore, and live handoff -- [configuration](https://herdr.dev/docs/configuration/) — keybindings, themes, notifications, environment variables -- [integrations](https://herdr.dev/docs/integrations/) — pi, omp, claude code, codex, cursor agent cli, github copilot cli, droid, kimi code cli, opencode, kilo code cli, hermes, mastracode, qodercli integrations -- [`SKILL.md`](./SKILL.md) — reusable agent skill -- [socket api](https://herdr.dev/docs/socket-api/) — socket protocol and cli reference +[**→ become a sponsor**](https://github.com/sponsors/ogulcancelik) · enterprise / partnership: hey@herdr.dev · see [SPONSORS.md](./SPONSORS.md) for tiers. thank you 🐑 ## agent instructions @@ -284,18 +73,11 @@ if you are an ai agent helping with this repository, read [`AGENTS.md`](./AGENTS git clone https://github.com/ogulcancelik/herdr cd herdr cargo build --release -./target/release/herdr just test # unit tests just check # formatting, tests, and maintenance checks ``` -## sponsors - -herdr is built full-time, in the open, with no revenue behind it. sponsoring directly funds development, stability, and the path to a real agent runtime. - -[**→ become a sponsor**](https://github.com/sponsors/ogulcancelik) · enterprise / partnership: hey@herdr.dev · see [SPONSORS.md](./SPONSORS.md) for tiers. thank you 🐑 - ## license Herdr is dual-licensed: diff --git a/SPONSORS.md b/SPONSORS.md index f1be2fa5..3614fc9e 100644 --- a/SPONSORS.md +++ b/SPONSORS.md @@ -1,6 +1,6 @@ # Sponsors -herdr is independent, open source, and built full-time with no revenue behind it. +herdr is independent, open source, and built full-time. Every sponsorship goes directly toward development, stability, and reaching herdr's goal of becoming the runtime for coding agents. @@ -32,7 +32,7 @@ qualifies for. ## Gold -<!-- gold sponsors render here --> +- [Terminal Trove](https://terminaltrove.com/) ## Backers diff --git a/assets/sponsors/terminal-trove.png b/assets/sponsors/terminal-trove.png Binary files differnew file mode 100644 index 00000000..df144e50 --- /dev/null +++ b/assets/sponsors/terminal-trove.png diff --git a/assets/sponsors/terminal-trove.svg b/assets/sponsors/terminal-trove.svg new file mode 100644 index 00000000..772d7a27 --- /dev/null +++ b/assets/sponsors/terminal-trove.svg @@ -0,0 +1,5 @@ +<svg width="816" height="214" viewBox="0 0 816 214" fill="none" xmlns="http://www.w3.org/2000/svg"> +<rect width="816" height="214" fill="#B7FFA6"/> +<path d="M254.144 131V86.072H237.944V80.6H276.392V86.072H260.192V131H254.144ZM293.26 132.008C289.708 132.008 286.588 131.264 283.9 129.776C281.212 128.24 279.124 126.104 277.636 123.368C276.148 120.632 275.404 117.464 275.404 113.864V113C275.404 109.352 276.148 106.16 277.636 103.424C279.124 100.688 281.188 98.576 283.828 97.088C286.468 95.552 289.492 94.784 292.9 94.784C296.212 94.784 299.14 95.504 301.684 96.944C304.228 98.336 306.22 100.352 307.66 102.992C309.1 105.632 309.82 108.728 309.82 112.28V114.872H281.092C281.236 118.664 282.46 121.64 284.764 123.8C287.068 125.912 289.948 126.968 293.404 126.968C296.428 126.968 298.756 126.272 300.388 124.88C302.02 123.488 303.268 121.832 304.132 119.912L309.028 122.288C308.308 123.776 307.3 125.264 306.004 126.752C304.756 128.24 303.1 129.488 301.036 130.496C299.02 131.504 296.428 132.008 293.26 132.008ZM281.164 110.192H304.06C303.868 106.928 302.74 104.384 300.676 102.56C298.66 100.736 296.068 99.824 292.9 99.824C289.684 99.824 287.044 100.736 284.98 102.56C282.916 104.384 281.644 106.928 281.164 110.192ZM319.742 131V95.792H325.286V100.112H326.294C326.918 98.576 327.878 97.448 329.174 96.728C330.47 96.008 332.174 95.648 334.286 95.648H338.462V100.832H333.926C331.382 100.832 329.318 101.552 327.734 102.992C326.198 104.384 325.43 106.568 325.43 109.544V131H319.742ZM346.882 131V95.792H352.426V100.184H353.434C354.106 98.936 355.21 97.784 356.746 96.728C358.282 95.672 360.442 95.144 363.226 95.144C365.962 95.144 368.17 95.744 369.85 96.944C371.578 98.144 372.826 99.608 373.594 101.336H374.602C375.418 99.608 376.642 98.144 378.274 96.944C379.954 95.744 382.282 95.144 385.258 95.144C387.61 95.144 389.674 95.624 391.45 96.584C393.226 97.544 394.618 98.936 395.626 100.76C396.682 102.536 397.21 104.672 397.21 107.168V131H391.522V107.672C391.522 105.32 390.826 103.472 389.434 102.128C388.09 100.736 386.194 100.04 383.746 100.04C381.154 100.04 379.018 100.88 377.338 102.56C375.706 104.24 374.89 106.664 374.89 109.832V131H369.202V107.672C369.202 105.32 368.506 103.472 367.114 102.128C365.77 100.736 363.874 100.04 361.426 100.04C358.834 100.04 356.698 100.88 355.018 102.56C353.386 104.24 352.57 106.664 352.57 109.832V131H346.882ZM408.828 131V95.792H414.516V131H408.828ZM411.708 90.32C410.46 90.32 409.404 89.912 408.54 89.096C407.724 88.28 407.316 87.248 407.316 86C407.316 84.704 407.724 83.648 408.54 82.832C409.404 82.016 410.46 81.608 411.708 81.608C412.956 81.608 413.988 82.016 414.804 82.832C415.62 83.648 416.028 84.704 416.028 86C416.028 87.248 415.62 88.28 414.804 89.096C413.988 89.912 412.956 90.32 411.708 90.32ZM426.476 131V95.792H432.02V101.768H433.028C433.796 100.088 435.092 98.576 436.916 97.232C438.788 95.84 441.524 95.144 445.124 95.144C447.764 95.144 450.116 95.696 452.18 96.8C454.292 97.904 455.972 99.536 457.22 101.696C458.468 103.856 459.092 106.52 459.092 109.688V131H453.404V110.12C453.404 106.616 452.516 104.072 450.74 102.488C449.012 100.904 446.66 100.112 443.684 100.112C440.276 100.112 437.492 101.216 435.332 103.424C433.22 105.632 432.164 108.92 432.164 113.288V131H426.476ZM481.432 132.008C478.984 132.008 476.752 131.576 474.736 130.712C472.72 129.848 471.136 128.6 469.984 126.968C468.832 125.336 468.256 123.344 468.256 120.992C468.256 118.592 468.832 116.624 469.984 115.088C471.136 113.504 472.72 112.328 474.736 111.56C476.752 110.744 479.008 110.336 481.504 110.336H493.384V107.744C493.384 105.248 492.64 103.28 491.152 101.84C489.712 100.4 487.552 99.68 484.672 99.68C481.84 99.68 479.632 100.376 478.048 101.768C476.464 103.112 475.384 104.936 474.808 107.24L469.48 105.512C470.056 103.544 470.968 101.768 472.216 100.184C473.464 98.552 475.12 97.256 477.184 96.296C479.296 95.288 481.816 94.784 484.744 94.784C489.256 94.784 492.76 95.96 495.256 98.312C497.752 100.616 499 103.88 499 108.104V124.016C499 125.456 499.672 126.176 501.016 126.176H504.256V131H499.288C497.704 131 496.432 130.568 495.472 129.704C494.512 128.792 494.032 127.592 494.032 126.104V125.744H493.168C492.64 126.656 491.92 127.616 491.008 128.624C490.144 129.584 488.944 130.376 487.408 131C485.872 131.672 483.88 132.008 481.432 132.008ZM482.08 127.112C485.44 127.112 488.152 126.128 490.216 124.16C492.328 122.144 493.384 119.336 493.384 115.736V114.944H481.72C479.464 114.944 477.592 115.448 476.104 116.456C474.664 117.416 473.944 118.88 473.944 120.848C473.944 122.816 474.688 124.352 476.176 125.456C477.712 126.56 479.68 127.112 482.08 127.112ZM512.046 131V80.6H517.734V131H512.046ZM558.457 131V86.072H542.257V80.6H580.705V86.072H564.505V131H558.457ZM583.132 131V95.792H588.676V100.112H589.684C590.308 98.576 591.268 97.448 592.564 96.728C593.86 96.008 595.564 95.648 597.676 95.648H601.852V100.832H597.316C594.772 100.832 592.708 101.552 591.124 102.992C589.588 104.384 588.82 106.568 588.82 109.544V131H583.132ZM625.279 132.008C621.727 132.008 618.583 131.264 615.847 129.776C613.159 128.288 611.047 126.2 609.511 123.512C608.023 120.776 607.279 117.56 607.279 113.864V112.928C607.279 109.28 608.023 106.088 609.511 103.352C611.047 100.616 613.159 98.504 615.847 97.016C618.583 95.528 621.727 94.784 625.279 94.784C628.831 94.784 631.951 95.528 634.639 97.016C637.375 98.504 639.487 100.616 640.975 103.352C642.511 106.088 643.279 109.28 643.279 112.928V113.864C643.279 117.56 642.511 120.776 640.975 123.512C639.487 126.2 637.375 128.288 634.639 129.776C631.951 131.264 628.831 132.008 625.279 132.008ZM625.279 126.896C629.023 126.896 631.999 125.72 634.207 123.368C636.463 120.968 637.591 117.752 637.591 113.72V113.072C637.591 109.04 636.463 105.848 634.207 103.496C631.999 101.096 629.023 99.896 625.279 99.896C621.583 99.896 618.607 101.096 616.351 103.496C614.095 105.848 612.967 109.04 612.967 113.072V113.72C612.967 117.752 614.095 120.968 616.351 123.368C618.607 125.72 621.583 126.896 625.279 126.896ZM660.967 131L648.367 95.792H654.415L664.999 126.752H666.007L676.591 95.792H682.639L670.039 131H660.967ZM705.502 132.008C701.95 132.008 698.83 131.264 696.142 129.776C693.454 128.24 691.366 126.104 689.878 123.368C688.39 120.632 687.646 117.464 687.646 113.864V113C687.646 109.352 688.39 106.16 689.878 103.424C691.366 100.688 693.43 98.576 696.07 97.088C698.71 95.552 701.734 94.784 705.142 94.784C708.454 94.784 711.382 95.504 713.926 96.944C716.47 98.336 718.462 100.352 719.902 102.992C721.342 105.632 722.062 108.728 722.062 112.28V114.872H693.334C693.478 118.664 694.702 121.64 697.006 123.8C699.31 125.912 702.19 126.968 705.646 126.968C708.67 126.968 710.998 126.272 712.63 124.88C714.262 123.488 715.51 121.832 716.374 119.912L721.27 122.288C720.55 123.776 719.542 125.264 718.246 126.752C716.998 128.24 715.342 129.488 713.278 130.496C711.262 131.504 708.67 132.008 705.502 132.008ZM693.406 110.192H716.302C716.11 106.928 714.982 104.384 712.918 102.56C710.902 100.736 708.31 99.824 705.142 99.824C701.926 99.824 699.286 100.736 697.222 102.56C695.158 104.384 693.886 106.928 693.406 110.192Z" fill="black"/> +<path d="M73.72 88.384H88.696V68.8H96.184V88.384H114.616V95.296H96.184V126.208C96.184 128.128 97.048 129.088 98.776 129.088H112.312V136H96.088C93.912 136 92.12 135.296 90.712 133.888C89.368 132.48 88.696 130.688 88.696 128.512V95.296H73.72V88.384ZM132.789 140.608H177.525V147.52H132.789V140.608Z" fill="black"/> +</svg> |
