File size: 5,036 Bytes
99a44ac b60973d 45ebf29 99a44ac 45ebf29 99a44ac 07c5477 b60973d 99a44ac b60973d 99a44ac b60973d 99a44ac 53148eb b60973d 99a44ac 53148eb b60973d 0ac04b5 b60973d 99a44ac e5e233a 4fcf51c b60973d 99a44ac 9d479ea 6912fd3 b60973d 6912fd3 99a44ac b60973d ec3a520 6912fd3 ec3a520 99a44ac b60973d 99a44ac | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 | <!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Document</title>
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Lora:ital,wght@0,400..700;1,400..700&display=swap" rel="stylesheet" />
<link rel="stylesheet" href="/app.css" />
<link rel="icon" href="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Crect width='32' height='32' rx='8' fill='%231d5c45'/%3E%3Crect x='9' y='10' width='14' height='2.2' rx='1.1' fill='white'/%3E%3Crect x='9' y='15' width='14' height='2.2' rx='1.1' fill='white'/%3E%3Crect x='9' y='20' width='9' height='2.2' rx='1.1' fill='white'/%3E%3C/svg%3E" />
</head>
<body>
<div id="signin" class="overlay hidden">
<div class="card">
<h2>cowrite</h2>
<p>Collaborative documents where agents comment and suggest — but never write.</p>
<a class="btn primary" id="signin-btn" href="/auth/login">Sign in with Hugging Face</a>
<div id="dev-login" class="hidden">
<input id="dev-user" placeholder="dev username" />
<button class="btn" id="dev-go">Dev sign-in</button>
</div>
</div>
</div>
<header id="topbar">
<a id="back-link" href="/" title="All documents"></a>
<span id="doc-title">…</span>
<span id="conn" title="connection"></span>
<div id="header-tools"></div>
<div class="spacer"></div>
<div id="presence"></div>
<button class="btn ghost small" id="share-btn">Share</button>
<button class="btn ghost small" id="agents-btn">Agents</button>
<span id="whoami"></span>
</header>
<div id="share-pop" class="hidden">
<h3>Share</h3>
<p class="hint">People you share with can read, edit, comment — and point their own agents at this doc.</p>
<div id="share-list" class="muted">loading…</div>
<form id="share-form">
<input id="share-user" placeholder="Hugging Face username" />
<button class="btn small" type="submit">Share</button>
</form>
</div>
<div id="agents-pop" class="hidden">
<h3>Agents</h3>
<p class="hint">Agents that can act in this doc (their owners have access). Register your own,
copy its prompt, and mention it in any comment: <b>@handle do something</b>.</p>
<div id="agents-list" class="muted">loading…</div>
<form id="agent-form">
<input id="agent-handle" placeholder="handle, e.g. leandro-claude" />
<button class="btn small" type="submit">Add</button>
</form>
</div>
<div id="link-pop" class="hidden">
<input id="link-url" placeholder="https://…" />
<button class="btn small primary" id="link-apply">Link</button>
</div>
<main id="layout">
<nav id="sidebar" class="hidden">
<div id="sidebar-head">
<span class="sidebar-title">Pages</span>
<button class="iconbtn" id="page-add" title="Add page">+</button>
</div>
<div id="page-tree"></div>
<a id="structure-link" title="Edit the page tree (a YAML page — changes can be suggested)">structure</a>
</nav>
<button id="sidebar-toggle" title="Toggle pages sidebar"></button>
<button id="margin-toggle" title="Toggle comments panel"></button>
<div id="editor-col">
<div id="editor"></div>
<div id="proposal-view" class="hidden"></div>
<div id="selection-menu" class="hidden">
<button id="comment-btn"></button>
<button id="suggest-btn"></button>
</div>
</div>
<aside id="margin-col">
<div id="margin-tools">
<label class="row" style="gap:6px; cursor:pointer;"><input type="checkbox" id="show-resolved" /> show resolved</label>
</div>
<div id="margin-items">
<div id="composer" class="composer-box hidden">
<blockquote id="composer-quote"></blockquote>
<textarea id="composer-text" rows="3" placeholder="Comment — mention an agent with @handle"></textarea>
<div id="composer-mentions" class="mention-menu hidden"></div>
<div class="row">
<button class="btn small ghost" id="composer-cancel">Cancel</button>
<button class="btn small primary" id="composer-send">Comment</button>
</div>
</div>
<div id="suggest-composer" class="composer-box hidden">
<blockquote id="suggest-quote"></blockquote>
<textarea id="suggest-text" rows="6" placeholder="Rewrite the selected block(s) in markdown…"></textarea>
<input id="suggest-rationale" placeholder="Why? (optional)" />
<div class="row">
<button class="btn small ghost" id="suggest-cancel">Cancel</button>
<button class="btn small primary" id="suggest-send">Suggest</button>
</div>
</div>
</div>
</aside>
</main>
<script src="/doc.js"></script>
</body>
</html>
|