diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..676ae44 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,35 @@ +# Changelog + +All notable changes to this project are documented here. +The format is based on [Keep a Changelog](https://keepachangelog.com/), +and this project adheres to [Semantic Versioning](https://semver.org/). + +## [1.2.0] - 2026-06-14 + +### Changed +- Split the Paper (Courier) look out into its own standalone theme, + [Paper Source](https://github.com/Brightwav3/Paper-Source). Coding Agent now + focuses on its two coding-agent identities: **Claude Code** and **OpenAI Codex**. +- Aligned the `manifest.json` author name and `authorUrl` with the repository. + +### Removed +- The **Paper (Courier)** option from the Style Settings *Look* selector and all + associated `cc-look-paper` styling. + +### Added +- MIT license file. +- Expanded README with the looks overview, full feature list, a Style Settings + reference table, and detailed installation instructions. +- This changelog. + +## [1.1.0] - 2026-06-12 + +### Added +- Paper (Courier) look alongside Claude Code and OpenAI Codex. +- Style Settings controls for background depth, corner radius, font size, + monospace UI, and the H1 prompt glyph. + +## [1.0.0] - 2026-06-11 + +### Added +- Initial release with Claude Code and OpenAI Codex looks. diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..8bc00fc --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2026 Šimon Zelenka + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md index f9f6c5b..8b08860 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,61 @@ -# Coding Agent Theme +# Coding Agent -An Obsidian theme with multiple identities, switchable in Style Settings: +> An [Obsidian](https://obsidian.md) theme that dresses the whole app as your favorite coding agent — switchable between a Claude Code and an OpenAI Codex identity in Style Settings. -- **Claude Code** (default) — warm near-black + Anthropic coral accent -- **OpenAI Codex** — cool neutral black + OpenAI teal-green accent -- **Paper (Courier)** — light mint typewriter look with customizable orange/green accents +Coding Agent reskins the entire chrome (titlebar, tabs, sidebar, file tree, status bar, scrollbars) so the app reads as the chosen agent, not just the note body. Every accent-derived token recomputes from a single `--cc-accent`, so swapping looks repaints everything at once. + +![Version](https://img.shields.io/badge/version-1.2.0-d97757) +![Obsidian](https://img.shields.io/badge/Obsidian-1.0.0%2B-7c3aed) +![License](https://img.shields.io/badge/license-MIT-green) + +--- + +## Looks + +Switch in **Settings → Style Settings → coding agent → Look**: + +- **Claude Code** (default) — warm near-black surface with the Anthropic coral accent. +- **OpenAI Codex** — cool neutral black with the OpenAI teal-green accent. + +Both looks adapt to Obsidian's light and dark base color schemes. + +## Features + +- **Whole-app reskin** — ribbon, tabs, sidebar, file tree, status bar, scrollbars, and modals all follow the active agent identity. +- **Single-accent engine** — every accent-derived token is computed from `--cc-accent` with `oklch()`, so changing the look (or the accent) repaints the entire UI. +- **File explorer as "Recents"** — airy rounded rows with a hollow status dot per file that fills with the accent on the active note. +- **Color-coded heading ladder** — `h1`–`h6` each get their own hue for at-a-glance document structure. +- **Style Settings controls** — background depth, corner radius, base font size, a monospace-everything toggle, and an optional `✳` prompt glyph before H1. +- **Refined details** — pill-shaped tags, card-style plugin lists, custom scrollbars, and subtle motion throughout. + +## Style Settings + +This theme exposes its controls through the [Style Settings](https://github.com/mgmeyers/obsidian-style-settings) community plugin: + +| Setting | What it does | +| --- | --- | +| Look | Claude Code or OpenAI Codex identity | +| Background depth | How dark the main surface sits | +| Corner radius | Softness of panels, chips, and buttons | +| Font size | Base text size across notes | +| Monospace everything | Use the mono font across the whole UI | +| ✳ glyph before H1 | Prefix top-level headings with the accent prompt glyph | + +Install Style Settings for the full experience; without it the theme falls back to its Claude Code defaults. ## Installation -1. Copy this folder into your vault's `.obsidian/themes/` directory. -2. Select **Coding Agent** in Settings -> Appearance -> Theme. +### Manual + +1. Download `theme.css` and `manifest.json` from this repository. +2. Copy them into your vault at `.obsidian/themes/Coding Agent/`. +3. In Obsidian, go to **Settings → Appearance → Themes** and select **Coding Agent**. + +## Compatibility + +- Requires Obsidian **1.0.0** or newer. +- The Source Code Pro font is loaded from Google Fonts; if you work offline, install the font locally for the full effect. + +## License + +[MIT](LICENSE) © 2026 Šimon Zelenka diff --git a/manifest.json b/manifest.json index 446fcb6..7c0e624 100644 --- a/manifest.json +++ b/manifest.json @@ -1,7 +1,7 @@ { "name": "Coding Agent", - "version": "1.1.0", + "version": "1.2.0", "minAppVersion": "1.0.0", - "author": "BrightWav3", - "authorUrl": "" + "author": "Šimon Zelenka", + "authorUrl": "https://github.com/Brightwav3" } diff --git a/theme.css b/theme.css index 0e0a5a6..5f73de7 100644 --- a/theme.css +++ b/theme.css @@ -32,9 +32,6 @@ settings: - label: OpenAI Codex value: cc-look-codex - - - label: Paper (Courier) - value: cc-look-paper - id: cc-bg-depth title: Background depth @@ -261,177 +258,6 @@ settings: --text-faint: oklch(0.66 0.006 250); } -/* -------------------------------------------------------------------------- - PAPER (Courier) — light mint typewriter look. - body. beats .theme-light/.theme-dark, so it always reads as paper, - regardless of Obsidian's light/dark toggle. - -------------------------------------------------------------------------- */ -body.cc-look-paper { - --cc-accent: #d39a67; /* backlink */ - --accent-h: 29; --accent-s: 58%; --accent-l: 61%; - - --cc-coral: var(--cc-accent); - --cc-coral-hover: #bd8650; - --cc-coral-soft: #d39a672e; - --cc-paper-underline: #b37b40; /* backlink underline */ - --cc-paper-italic: #c86f2b; - --cc-paper-bold: #c86f2b; - - --background-primary: #eef8f0; - --background-primary-alt: #e8f4ea; - --background-secondary: #e4f1e7; - --background-secondary-alt: #dcecdf; - - --background-modifier-border: #cfe1d3; - --background-modifier-border-hover: #bcd4c1; - --background-modifier-hover: #37553a14; - --background-modifier-form-field: #f6fbf7; - - --text-normal: #37553a; - --text-muted: #5e7a62; - --text-faint: #93a896; - --text-on-accent: #ffffff; - --text-accent: var(--cc-accent); - --text-selection: #d39a6740; - - --interactive-accent: var(--cc-accent); - --interactive-accent-hover: var(--cc-coral-hover); - - --titlebar-background: #e4f1e7; - --titlebar-background-focused: #e8f4ea; - --tab-background-active: #eef8f0; - - --h1-color: #143d22; - --h2-color: #1c5230; - --h3-color: #24683e; - --h4-color: #2d7e4d; - --h5-color: #36945c; - --h6-color: #3faa6a; - --inline-title-color: #143d22; - - --code-background: #e4f1e7; - --code-normal: #37553a; - - --blockquote-border-color: #cfe1d3; - --hr-color: #cfe1d3; - --checkbox-color: var(--cc-accent); - --tag-background: #d39a672e; - --tag-color: #8a5e30; - --list-marker-color: #93a896; - - --scrollbar-thumb-bg: #37553a26; - --scrollbar-active-thumb-bg: #37553a40; - - /* Courier Prime everywhere — typewriter feel */ - --font-text-theme: "Source Code Pro", ui-monospace, monospace; - --font-interface-theme: "Source Code Pro", ui-monospace, monospace; - --font-monospace-theme: "Source Code Pro", ui-monospace, monospace; -} - -/* Paper DARK — inverted: dark-green surfaces, mint text. Accent (tan) stays. - Triggered by Obsidian's dark mode while the Paper look is active. */ -body.cc-look-paper.theme-dark { - --cc-paper-italic: #d39a67; - --cc-paper-bold: #d39a67; - - --background-primary: #272822; - --background-primary-alt: #2f302a; - --background-secondary: #212219; - --background-secondary-alt: #1b1c15; - - --background-modifier-border: #49483e; - --background-modifier-border-hover: #5f5d50; - --background-modifier-hover: #eef8f012; - --background-modifier-form-field: #21221b; - --table-border-color: #5a594d; - - --text-normal: #eef8f0; - --text-muted: #bdd3c0; - --text-faint: #8aa68f; - --text-selection: #d39a6740; - - --titlebar-background: #212219; - --titlebar-background-focused: #272822; - --tab-background-active: #272822; - - --h1-color: #d0eed4; - --h2-color: #b2e3b8; - --h3-color: #94d89c; - --h4-color: #76cc80; - --h5-color: #57bf64; - --h6-color: #38b348; - --inline-title-color: #d0eed4; - - --code-background: #21221b; - --code-normal: #eef8f0; - - --blockquote-border-color: #49483e; - --hr-color: #49483e; - --tag-background: #d39a672e; - --tag-color: #e3c4a0; - --list-marker-color: #8aa68f; - - --scrollbar-thumb-bg: #eef8f021; - --scrollbar-active-thumb-bg: #eef8f038; -} - -/* Paper: justified body (reading view) + underlined tan backlinks */ -body.cc-look-paper .markdown-preview-view p, -body.cc-look-paper .markdown-rendered p { - text-align: justify; - hyphens: auto; -} -body.cc-look-paper .internal-link, -body.cc-look-paper .cm-hmd-internal-link, -body.cc-look-paper .markdown-rendered a { - color: var(--cc-accent); - text-decoration: underline; - text-decoration-color: var(--cc-paper-underline); - text-underline-offset: 3px; -} - -/* Paper: bold/italic styled orange */ -body.cc-look-paper .markdown-rendered strong, -body.cc-look-paper .markdown-rendered b, -body.cc-look-paper .cm-s-obsidian .cm-strong { - color: var(--cc-paper-bold) !important; -} -body.cc-look-paper .markdown-rendered em, -body.cc-look-paper .markdown-rendered i, -body.cc-look-paper .cm-s-obsidian .cm-em { - color: var(--cc-paper-italic) !important; -} - -/* Paper (light only): table/Bases borders read too faint on the pale mint bg */ -body.cc-look-paper.theme-light { - --table-border-color: #9fb8a4; - --background-modifier-border: #bcd1c0; -} -body.cc-look-paper.theme-light .markdown-rendered th, -body.cc-look-paper.theme-light .markdown-rendered td, -body.cc-look-paper.theme-light .bases-table-cell, -body.cc-look-paper.theme-light .bases-th, -body.cc-look-paper.theme-light .bases-td { - border-color: #9fb8a4; -} - -/* Paper (dark): active file dot in Monokai green */ -body.cc-look-paper.theme-dark .nav-file-title.is-active .nav-file-title-content::before, -body.cc-look-paper.theme-dark .nav-file-title.has-focus .nav-file-title-content::before { - background: #a6e22e; - border-color: #a6e22e; -} - -/* Source Code Pro has real weights — Medium (500) as the base reads solid - without being heavy, real bold (700) stays distinct */ -body.cc-look-paper { --bold-weight: 700; } -body.cc-look-paper .markdown-preview-view, -body.cc-look-paper .markdown-source-view .cm-content, -body.cc-look-paper .inline-title, -body.cc-look-paper .nav-files-container, -body.cc-look-paper .workspace-tab-header, -body.cc-look-paper .status-bar { font-weight: 500; } - /* -------------------------------------------------------------------------- Typography -------------------------------------------------------------------------- */