@scribed/cli 0.1.5 → 0.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +142 -94
- package/dist/mcp/server.js +141 -93
- package/package.json +3 -3
package/dist/index.js
CHANGED
|
@@ -49565,7 +49565,7 @@ var program = new Command;
|
|
|
49565
49565
|
// package.json
|
|
49566
49566
|
var package_default = {
|
|
49567
49567
|
name: "@scribed/cli",
|
|
49568
|
-
version: "0.1.
|
|
49568
|
+
version: "0.1.7",
|
|
49569
49569
|
description: "Command-line client + MCP server for Scribed — CRM records, phone + texting, inbox, calendar + booking, transcriptions, HR, Vault, automations, Creative Studio, and Documents, derived from the scribed-agent tool catalog.",
|
|
49570
49570
|
type: "module",
|
|
49571
49571
|
license: "SEE LICENSE IN LICENSE",
|
|
@@ -74739,7 +74739,7 @@ class StreamableHTTPClientTransport {
|
|
|
74739
74739
|
// package.json
|
|
74740
74740
|
var package_default2 = {
|
|
74741
74741
|
name: "@scribed/cli",
|
|
74742
|
-
version: "0.1.
|
|
74742
|
+
version: "0.1.7",
|
|
74743
74743
|
description: "Command-line client + MCP server for Scribed — CRM records, phone + texting, inbox, calendar + booking, transcriptions, HR, Vault, automations, Creative Studio, and Documents, derived from the scribed-agent tool catalog.",
|
|
74744
74744
|
type: "module",
|
|
74745
74745
|
license: "SEE LICENSE IN LICENSE",
|
|
@@ -91194,48 +91194,58 @@ function normalizeApiUrl(raw) {
|
|
|
91194
91194
|
return url2.origin;
|
|
91195
91195
|
}
|
|
91196
91196
|
|
|
91197
|
+
// src/auth/callback-brand.ts
|
|
91198
|
+
var CALLBACK_ICON_LIGHT = "data:image/png;base64,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";
|
|
91199
|
+
var CALLBACK_ICON_DARK = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAYAAADimHc4AAAACXBIWXMAAAsSAAALEgHS3X78AAAgAElEQVR4nO1dB1hUR9deAYVdehPEQkewl6gIilhARSxRURONJmoSE2OLJfZesSsiiCDSiw2kiIqoNAEpUgUEQQUsFCkq0t7/ObMsrnyaP19cUv7ffZ7Xu7u498y875kzM2fm3svh/ImXn5+fOEH4u5CQEEk/P7/uTk5OVnZ2dkuPHz9ue/jwQbdDhw4F79+/P3Lv3r1pe/bsyd+zZ0/J7t27K3ds31G3bfs2bNu2DVu3bsWWLVuwefNmbNq0iWHjxo3YsGED1q9fj3Xr1mHt2rX47bffsGbNGqxevRqrVq3CypUr8euvv2L58uVYtmwZli5dil9++QWLFy/Gzz//jJ9++gk//vgjfvjhByxcuBALFizAd999h2+//Rbz5s3D3LlzMWfOHHz99dd1X3/9deXXX39dMmvWrPyZM2emzZgxI9LGxibYxsbGzcbGxnbatGlLp06damVjY9N93LhxksJ1t7GxESdw2vq1ZcsWMYKQEOqOjo7zjh496rV///7cHTt21G7fvp0RSGQRQUuWLMGiRYsYAVT5b775hiqMWbNmYcaMGS2wsbH5D0yfPr0F06ZNY5g6dep7+PLLLzFlyhSGyZMnt2DSpEmYOJEwkcHa2pphwoQJDFZWVv8Bwd8Ev5k8aXLLuQXnt7a2rrW2ts6dMGGC18SJE+fZ2Niof4wfUb7aNXt8O/rg6uo6+Pjx4+579+6tIMJXrVrVNH/+fEbUhAkTGsaOHdswZsyY+lGjRtWbm5s3EEaMGNE4YsSIJiHgr4a5ufnvgZWLHc3NqaxUZip7/ciRI1k9Ro0aRfXC2LFjqZ5NJKiVlVWFtbW1+5QpUwYLuGpuDYyrT36RooJw4+npqX/s2DH/vXv3NlJYoCZMhFPBiGAzM7MmMzOz/6bS+BeChGokQUaOHNlgYWHR3LKsGq2srPynTp2qT1w1i/BprUG4STk4OCw5cOBANcXkWbNmNVhaWtaTxxDp/0eJxh8Rg0AtZPTo0Q3NYa56otXEJa35+69fANgPw8LCpO3s7Lxtbfdh/oL5jRReBCHkH0AA/mFikGM2Uv9jbW3tPWfOHGmBEH+K/MDAQJVjx45FU5yfMWNG3ahRoz4Tb/6/CzF69Og61vFPsI62trZW+a9EEPxHIt/Ozi6eRjRTpkypb1b47/Yy/EvQRAMQCkkTJ06M/8MiAGA9d0REhIy9vX0kkT9p0mSK9X93hfBvhJAINKeQaab546MjgUL29vZeFHamTJlS93dXwvxfjlGjRvHDkbW11++2AsFQ08nJaem+fftoIsQ8/zNGfDIHo0ePrm8WYSlx/B+zZoEqZ8+eNTp48OBLmrFSHBOM6en4GWafwkHTmNFjaM700srKyug/WoLgw4kTJ7wp52JhYdEwfPhw9mM6fsbwT+bAzMysYfz48bC2tvJupl3sPfJdXFxMdu3a1WhjY9M0bNgwfMYwkXNgPtK8ady4cY2TJ082aeFeEI+O2x0/S1lG6rlNTU0/CzCsTZywnvJIVlZWZ9/rCy5duqSxd+/e0q+++gomJiZNJMD/LQz7B5SBgc2lLC0tSydNmqTR0gecOnVqLuXiKfYbGxs3mZiY4P8ChjGvM8VQk6Etn//mMpFzU7oC48ePn9siwJEjRzxoMYP+aGxsjKFDh/6rYWpqyircv38/9O8/EEOGDMXAgV+gT58+GDJkMExMTP/O8rGUtoWFhQcjPycnR3L37t05tDJkbGzcSAL8WzF0KN/TBg4cgAH9B2LhgsXw9QlAVFQ8Ll++hg3rd8LExAx9+vSCsfEQRsjfUM7G5rlBDltZc3JyMtq0aVMtTRQGDRrUNGTIEPzbYGxszIgfPHgQevfujUmTbODjHYia6jegV1NTE/2LxkYgOjoFCxcuQ98+/dGvX18+KUOM/8rysj525MiRtVZWY4w4J0+etKK111GjRzVQBf595A9lx969e2HYsJGw3WeHoicvGPF19fV48+Yt6urqUfe2Dg319ez7mpq38PEOgrW1DXr06MFaDAkxePBghr/AYRpGjxqNMWPGWHEOHjy4lIafw4cPbxg0aFBLIf7pGNLs+X379mFxfskva5CYmMEIbmhsRHVNLV69rsfbt414W9eIurpG1Dc0oa6uDg0NfCEePy7F7l3HMXSoGXr0NMKgQV9g8OAhFAkY2rD8tIpI2YalnAMHDthSB2xsbFz/xRdftBj/52IwI3/AgH7o2bMXpk2bg4CA66it5ZNKxFdW1eLNmwa8qW3A6zf1eP26jo83DUyMt2/r8La2Fo1NjaDolJCQiZ9//g19evdD3769mR3iog35oPQ+zblsOXv27HGj7Rv05cCBA1sM/xMxePAQfPHFQPToYYQRIyxw/JgLXrx4yYh//fotKl6+RnUNEV2Pmld1qK55y0c1/0jfvXrF//vbuga8rX2Lt29r2e9JsPPnrsPSYiJ69erJ7LUhH4IUvxtn586dwbSjYeDAgQ1k8J+DL97zQvquZw8jDBgwGCtXbkF6eh4jjogsK3uFiopaVFfXo7LqLR+VtXj58g0qCBVv2PuqKvo/tS1ikBC1tXWoffMG9XV8IaKjUmFmZsH6lDasXwPNSUaMGBHM2b59eyQNQQcMGNAwYMAA/JMwsJl8GjbS57lzf8S1azFoqKcRTRPKyl/j+fNXKC9/i/KKtygrr0Vp6RuUlhFeo6zsNUrLXqG09BU7lpe/RkXFa7x8+RpVVW/4YlS/xSsWnuh9FaqrX2HnzuPQ19dnNvv3798WdWugUdvw4cMjOZs3b06lTVL9+/dv/LsJHyAE8vx+/fqhe/fusLSciDWrd+PBg2LmpWVlNXj8uAKlpbUoK3uL58/f4BnDazx9+gpPn73C06c1DM+eEaoZnj+vwYvSGr4YzUJUVlLLeMNaRWXVKybCOf8w9DDqjT59+7AytIEIjTQHGTZsWCpn0+ZN+bTjrF+/fk1k6O/GwIEDMWBAfxgaGmDgQGPs3HkQcXcyMdF6JqZN+woXL4ajsLCMCVBYUI7i4hqUlLxBcfFrFBW9QlFRjRCqUVRUheLiKpSUEKpR8rQKT0mMFzUoLa1BWfkr1ndQeKp4+QovK6tw4fxV9DDqw/qCvn37MgiEEBHYfMvU1DSfs2HjxhLacte3b98mMvJ3oX+zlxn1MEQPo15YMP8XREcnM4/PzCjEqJET0K1bZ/TpPQDLl21AVNQ9FBaW48GDUjx4UI5Hj2rw6NErFD6qQWFBNQoL+Xj0qKoZlXj8uBJFRXwIRKGWQUJQP0Etq6z8Jfz9r8Cwey/W59DEjlIYAhFEhCYKraampiWcdevWVdJ+yD59+jQJ1P4r0Y+RPwC9evWAgb4+rCfYwN8vhI1q6FVVVY3EuzkYPXoiunfXR8+ePaClpQlj4xHYu9ce9+4VIC+vDJmZz5GdU4G8vGrk59c0H6vwkPCQUImCgkoUFhJe4vHjl3jyhC/Es+c1rL94/rwKL0ormADdDXqy0VavXr1aBBAhmijEmpqaVnLWrFlTN27cuBal/yrQBKpfv/7o06c39PT0GKEH9jvgaUk5f1j5phbPn7/Es2dlSErMwUhzK+jqarOxP4UGAwM9aGlpw9p6BtzcApGV9RSZmS+QkvIMWZkVyMmpRk52FXJzKpGby8eDBy+Rl0eowMOHFc1CUIugllCD4pJKPHteAT+/EOjrGcHIyBA9e/ZsEUGUoFBrYmJSx6Ft3pQeJSMkwl8BgScYGOihV69+WLpkPe7dy+WnD+rq8KL0JZ49r2Qh4dnzUty9ex8jRoyHto4mSx0QSAiCjo4W9PUNMf+75QgJvsNESEoqQWLiM6SnVSArsxKZmS+RmVmBrKwKZGeTOOXIzaXwVY78fBKCRKhm/UpxSRl8fUKgp2eI7obdm231FDkHFG4pJ8ShLeS0wfSvEYDflA0Nu0NPzwDTp8/DlStRqK+nGWkjysorUVxS0RwKaNRCcfoF7ibch5nZOGhra6KHEV8AAajc5Kmaml3Rr+9grF+3H1GR95GW+gJ37hQhIeE5Uu9VIC31JRMkPb0cmZnlyMoqx/375UyM/DwSoQoFD8vx5EkpfHyC+QJ0N2gRQNT8tAiwYsUKSo22GGkrkNGevXpCW1sbZmaWcHDwQkV5DfP6yioarZShhIWAKjx9+pKhpOQlnhQ9Q3xcFoYNs4SWVjcYGVFoMGoh5l2L6Al9fT1069oVI80n4PgxbyTEP8LduyWIjipCfNwLJCdXICW5HCkpZUhLLUN6WhkyMsqYEA9yK5CbU4aCghfw8gyCrk53GBjov2dLlHzQoIMJQFeWUGJIYKQtQAYNjbqjZ8++WLeWxvNFzemDNygqKsXjJzScfIkiQlE5Hj8uw5MnFSwkPHr0FHfuZMLU1JJ5uaHhOwGEwReG3huxlqKtpYPp076Dt2c47iaQCE9w+9YTxN2hFlWGxLtlSE4qRUryC6SmvkBmRhky0l/gwYNn8PQIgo6OARPU0NDwPRFEBRp8MAEoETdy5MgPVkoUIGMUIijWnz0bwIivr69DSUkZCgpLGcmPn1AIoM/kgaV4+LCUDTEJBQUluBObCVMTS3Tr1oURYmhk+BEBjNjf+Z8N0bVrZxh274OfFm1E0OVkxMeV4GbEI0TcKEJs9AvEx5UhIYEEeY6UZBLjGe5nP4W7+2Voa+tDT0+XTQQF5xQlSABKR3DoEiLKzAmUFjVIAC3NbliyZBPLPJaX02jkKQoeEtlljOy8PPK85++Q9xz5+aUMefnFiInJwNChYxihRIiAlI/ZpFGVrq4Os00kdtbQwKAvzLB1y0ncvJGL6MgiXAsrQMSNYkRHPced2OdIiH/OBEpPL4Hb2cvQ0tJn5zAwMGgTbqgvZALQBW2UmRNUStQgY9raevD3C2UrUpmZRYxYIjo7+xnu33/GhpBZWSUtuH//KXJzniOHkPsEMTHpMDYeg65dNBghAlJa2+GTrwszs9EYPmw0Oml0gr6BPgtbFL46d+4CS4vpsD9xCVG3H+FGeCFCQx4iIrwIMdHPEB1ZjOTkIrieCYSmph50dLQ/au9T0SIAXU1IO+DaRgAKCd2hq2uIkJDbqK5uQFpaEXKyKeY+RVpaCdJSS5CaWox7qUVISy1CenoxMjJK3glz/zGio9JgPGQ0unTVYEkyIuRD5e3Roye6du2CObMXICU5G0uWrGGjmS5dOrcQ2blzJ2hp6WH2V0vh4x2NqMgnuBqWj7ArBQi/Tp32E5xxCYRmN10mwO/ZE4kAtBZAW+cERkQL/lBOR6c7goNu4eXLBiQmPkZa2lOkpBQjKekJkhKfsO8S7z5GUtJj3EspQuq9IqSTOGkUEgoRGZmKIYNHoXOXTiy8CJMiDGoBJMD06bPZTPptbR0CA65j0sSZzPupD+lu0B06OjpQV++Inj0GYvnSvQgOSkPU7ccIDclBTHQhnJ0C0K2rDrS1tX7X3qeAJmNMALqGlt4IjIge+tDWNkDw5VsoLa3DnTsFSEosRkI8jUge4c6dwmYUID6+EHcTHuFu4mMWCgj37j3ErZv3MHjQKGh0Voeurt57pAiDPIu8ffq02aiqppR0GV69qsGzp+U4etQFg74YBjW1jtDS1oKBQXcWlujz0CGW2LvbDTfCc5GcVAQnx4tMAEp56OrqftTep4AEIMfnfP/992w4JDAiWvCHclqa+rgceAvPn9UhKjIfcXeeICb6EaIiCxF5uwBRkQ8RFfUQsTEFuBNbiLg7JMQThqSkfERE3MOgL0aik4YadHR0GSkfskeeRQJMnTob1VW1KHxUgpych3j69Blqa2uRlvoAy5dvgp6eEdTV1ZrJ1UfnzurQ0OgCq/Fz4OtzE2dcQt8T4GP2PgU0L6LQz6HVMFocECgtWpAxXXTrpouASzdRXPwWN8IfIPI2DQULcCM8vxl5iAjPw62IfCZGdBRfiNjYQsTH5yE8PAUDB5ijU6eO0NHWYSHkQ+Xlx3gNfDnlK1RVvmFziLy8J8jNfYTcBw9RVlaGmpo3CA2OxJdT5jDSqU+g39IEsWNHZXQ36I3p036Anq4BNDU1P2rrU9EiAF0LYDx0aIsh0YKM6aBrVx1cvHATjwrf4EpIDsKvF+DqlTyEhjxAaEguroTmIuxKDq5ffYCIG3m4GZGHyNv5iIykVpGDa1eTMaC/GdTVVaGtpc3I+lB5ybM0NNQxefIsttjy8GExsrMLkfvgCbJzHiErKx/5+QWoqqpkM+2T9t4wHjIKqqqqrO8gYuhIrYPI19LSaiNedNnklAlA90wYYmzcZoYog9m1C1+AvLzXCLx0H1dC8hEU+ACBF3MQcCEbgZeyEXQ5GyHB2Qi7kotrV3MRfj2PtYzISPouCQP6j2ACECkCAVqXmQTo1Emddbq09Pgg7wkyMh4iK6sQ9+8THiEzqwAZGQ/w6NEj1FTXsLWGtWv2wMCgN1RVVVjYoTAnEOBjtkQhAA3/OXTvBtqrImxItNBGl87aOH/uJu5n1eCcXyYCLz3Aef9snPO7z3DeP4vh4vksXA64j+CgbNZSwkJzEXEjCyHBiejX1wxqaiofJEYA8mDy3kmTZjEByOtT0/KRnv4QaWn5DPQ+I6MAael5yMjIQXFJMSqrahB+PQEzZ/wADY2u0NCgoapWi5224IYEMB9hDs7s2bPZwrewMdFCCxoaWvD3jUB6WjW8PdNxzi8HPp5Z8PbIhLdnJry9Mtj3vt4ZTKAL50iIbAQFZuNqWAYuB95F3z7DWYzu1k3zPRGEQZ5Foxpr65lsp0RmZgGSk3ORkpKHpKTcFqSkPEBqaj5SU/OQkpKDrKwcvHjxAs+eVsDF+RIG9DdpFkH7P4QQFZgA5ubg0DUBtDojqJRooQ0tbU0mgJ/vTaSkVMLNNRU+ntnwcMuEu2sG3Fwz4HE2HR5u6fBwT+cL4ZPBbxHnshAclI5LFxPQp9dwqKoqoWvXbujWrdsH7ZFnqampwnrCDLYTIi3tIRLu5uBuYi7i47MRF3efgd4nJuYgOTmHiZGSkovk5Czk5jxAWVk5Dh10hVrHTtDU7NZGvGixNAkTYNbMmSw3TZUiY6IGxVS1jhpwPhWExIRyOJ5MgKtzBlydM+HilI7TjmlwOZUGF6dUnHFOhduZVHi4pcHbMwM+Xum4eOEezp+LR++ew6CiooguXbqia9euHyyvtrYOOnZUgbXVDLx48Yp5fuydLEZ6TEwWoqMzER2VgZiYTMTG8r+Pj7+PxMRsJCXnIi4uAxkZ93H27EVodNJkI6q24oUSckwAui8P5aYFlRI1NDW12KxzlPl0eHnEI+BiNpwcknDiWBIcTqTC4UQaHNnxHhxPpMDJIQWnT6XA1fkeE8PfNwV+PnHo2cMUyioKbEbbpUuXD5aXPEtVVRlW46fj+bNqJCbmIjIyA1FRmbh9Kx03b6bhZkQqO96+lYbIyHRER6cjNjYD8QlZiI1NR8q9+zjt5Ac1tS4sDH3M1qeCBKAsNKd5S0qbCUDnpbBBntmzx2CsWHYU3l4p8HRPx5FD8ThyIBF2R+/B7tg9nDiWghPHkmF/PBmO9slMDC+PJPh43UEPIxMoK5MAnVtIaV1mEltFRQnjx03Hs6fViI/LRkQEkZ6O8PBUXL9+D9eupuD6tRSEX7+HGzdScPNmKiIj0xATS0KlIikpE6dO+UFVtTPr0IXtiZKTFgHojlOUGBKulKhBs1MSgeKzoqIShhpPxM7tvvDzyYTjySTs23UHB20TcfRQMo4cTMKRA3dx/HAiayVuronwco+FkeFQKCnJQ0ND4z9EEICatrKyEsaNnY6S4mrERGfh2lUiPRVhV1JwJTQZoSFJfIQmseHttWspuHHjHm7dopaRgoSEDJxy8IOqigbr0H/P3p/nowvLWzEBaE8QzcoERtoCXbt0RUfVjujYUZV9VlSUYxWcOGER7I5dZ6OgI4fisGtbLPbtTsDBfXdxaF8CDu9PgLNTAtxdY2FoMBSKSnLo1EnjPVKEQd6lpKTABCh6UoVbNzMQEpyEkOBkXA5MRGDAXQRcSkDApXgEBiQgKOguQkMScTUsic22r11LRGxsGk7a+0JFWZ2Vt1OnTh+192dB5yIBaCWSQ1fG0JBIYETUoDiqqanLVqX69zOFrKwM1NXUWPOWleWhW1cjLPhuJ86eiYf72VTs3RmD7ZtjsG93PGz3xOOkXRzOOMegu74xFBRloa7e6T1ShEHeRQJYWkxj203Cw9MQcOkuAgMSceF8As77x+OcfxzO+d/B+XNxuHiRL0RI8F2EhSUjNDQB0dH3cMLOB0pKamxipq5OeSISXZScaLDEIROAblZHQyJBpUSLztDo3AkdO3ZmM+HMjAIs+G4lOqlr8oVQ78RitoyMDPr0NsemDWfg630PjvaJ2LYlEls3RePY4Vg4n4qGvt4QyCvIQE1NXYiU90EjJEVFeViMmYrCgpcIC0vFOUZ6Avx84+DjfQfeXrHw9oyBj3cM/P1jmRCXLsaz1hAYGIdbt1Jgd8wbioodoaKiDDU1NZFzQ+cjAWgzBIc2ZVFzoErRH0QLMtgJKsqd4OsTxhbhHxYU48L5cIy1tIGcrALkFeSYbXl5GcjLKWOU+WwcPRQMP580HLSNge3eSDiejIS+7hDIy0ujY0e1FlJag0ZICgpyrAUUFlSydWBv71h4e92Bp3sMPNxi4HY2Cu5ukfBwj4SXZxS8vaPh7xeLixficP58DK5fT8Kxo15QVOjI+pPfs/cpaBGANmXRh7YRgKDGBPDzvYa8B89w/Xos8vML8eDBExw+eAa9exmDx+OxylKnJy0tBbWO2pg9ay1cXSJx4XwqnBxuQ09n8HsCUHlbl5lanLy8LCzGTMPD/Je4dDERbmeJ9Gi4OEfijHMknE/fYnBxvgXXM7fh7hYFL89o+PnGwscnCmFhiThy2BMKCqrNAnRssScqTuhcLQLQP5RHF66UaKEGJSV1+PpcQ27OU1y4cAvBwVGIiUlC4aMitulq2ZKt6NxJGzyeFMtMKisrQkpKEnq6X2DNKjucOX0HhgYmkJPjQZV15u9IEQY1bzl5GYwyn4LcnHKcP3cXp51uw/l0FE453IKjwy04nIxgOOUYgdOnbjIh3Fwj4ekRBXeP2wgKSsDBAx5QkFeBkpIiK8/H7P1Z0LmI89FjRoNDQyHKIgqMiB4dWXP28b6KjIxi+PtF4PLlGFy6dBtBl2/j7t1UFBYWI/hyFCZPmgc5OeoTeKw8cnLS4PFkYGr8JXR1+jLvVlV5R4iAFGEPlZWVZgJk3y+Dr3ccHE7eZMSfsIvACbsbsDseDrvj12F/4gZO2kfA0SECzk43WWtwcY5AwKU47NvjChlpRSaAiorKeyKIAnQuWrtgLYBSopRFFBgRLciYKhTkO8Lb6ypSU5/Awz0c5/xv4/z527hw/hbO+UcgODgSaWnZyM19gpP2fmzxRUqKC3l5OTYSkZbmQkFBHsrKyu8RIgy+CJ0gI8vDqJFTkJVZBk+PO7A7fgMnjkfg6JHrOHKIcA1HDl/D8aPhOHE8nAlBIhAcTl5lc4WF8zehfYf2zB6hLbhpEYDWgymJJaiYaEHGVCAvpwovzzAkJj6C8+kweHpEMCE8PW/A1ycCPj434ONzHWFhMcjOfsi2o69ZbYuuXbpDUpKIUIKKiiqUlPgCEKgSwrb4IqhDWoaHkeaTkZ72AmdconH44DVG/MH9V3HANoyB3h8+eB1HD4fj2JHrOHrkGuzsrsLPLw52x0Kg2dUIPGkpNmkUFl1UoPNR1KFbFnBoOZLSo4KKiRZkUBlysipwd7/CFt5P2ofCxfk6nJ3C4OIcBtczV+F29ho83K/Dw/0aPD2vIjw8DtnZjxAcHIfp036EnJwKuFzJZjL4FfgQSASeNBfmIybiXspznHK8jX17rsB271Xs2XUFe3ddaf4chv37rvLf7wuFk+NNlqfasskNutr9ISkpAQUFBQYlpXciiAp0Poo6TAC6VIaSWKI28g5KkJVVhrtbKKKjHuLo4SA42IfB/kQoTtqHwNEhFE6nCFeYIC4uV3HaKRQeHlcRGZnCtqWccrgI48HjICXFY5M3EkFZmV8RYVvU4ng8SZiPmMT2fJ60u4Wd20Owc1sotm/lH3ftuIKd20OxY1swDh28irOucTi4PxCWo+dBmifPyJeTk4e8vDwUFRVbBBAlP+8JQIsxNIUXGBE9FCEjowQ311DcvpWH/bYBOHY0BEcOBeHI4cs4eiQIx48Fwe54EE7YBbeI4ngyBA4ng+DjTZtr7yM+Lgcb1x+HjnYfdOjQno33qTIUlt55qSqkuHwBku4+w7HDEdiy6TK2bgrG5g1BDBvXXWainHKIYn3DVzPWQkW5K9q140BamsfIl5OTY32OQABhEUQBOl+LALQWwJ/CK7UByJgCZKSV2FaP8Ou52L3zAg7YXobt3gDY7rsE230Xsd/2Ig7sv4RDBwNw+FAAjhwOxLGjl5kox49dxgm7QNZpJyU9wJXQu5j7zSooKWqgg6QEFJUoTCgzsqhyUlIdMGK4NeJjS3Bwfzg2rA1gpP+26hLWrw3AkUPU6UZj8aKj0NHqD7pdKvUzsrJykJWVZSDvp/BD5xQWQVSgc+rp6vIF6Nu3bx0/QabYBiBjCpDmKcLldAjb+bBty3ns3hmAXTsuYuf283zsOIddO85hz67z2Lf3Amz3XXhPlCOHAnHowEWcOHEZISFxSErMh9vZMIweOQNSUjLg8jo0e6kKE2WE2QTciSnGvj1XsXLFeaxZeQm7doTB0SEGm9Z5oH/f8ZAQ6wBxCTGWBhGAyCfvby2AqEHnbm4BdZw+ffpUUoJIQUGhSdDxiA6KUFSQB4+rAGenEAQH3cf6dX7YuvkCNm88h00b/LFpgy82b/TFlk2+2LrZF9u3+WHHdn/s2uGP3bvOYc/u89i350JLS7Hddw4n7YMQHp6MmJgc7NjmDAP9QZCQoNgtgw6S7WFuNgExUcXYvlB8w74AAAmtSURBVDUUG9YHwN4uCvv2UJxfAJ6UIvN6Ho8LaWkZSEtLM/KJeAH5AgHaCvLy8k0kgIWFRSWnV69eJSQAfSkwLjrwcz1cKXmccgzGxfMZWLXCG+vW+OO31b74bZU3flvtjbWrvbB2jSfWrfHC+rVe2LDeG5s3emPrZh9s2+KL7Vt9sWObHxNlz65z2L3TH3t2+8H59BXcvp2J0JBkzP92EzqqajFyRwwfj5s3CmB/4jbsjoXj65kboKzUrTncdACPRxM8XovXCzxfWABhEUTPi3wTzQMsLS1LOD169MinKXzbCECQZQI4ngyCn28ali72wK/LfLFiqRdWLPXEimWe+HW5J1au8MDKFe5Y9as71qxyx2+rPbB2jQfWr/XEhvVe2LSR4I0tm/ii7NhGrcUHe3b5wcM9ArdvZcPN9SZMjL/E+LEzEXAxHYt/PAJd7UGMeAkJcUY6l8tjR4HntxagtQhtATk5uSZKRYy1tMznGBgYpLIcipxco3AhRAdZSEhwcXC/D/z90vDzD+5YutgLixd54JefPPDLz+5YwuCGZYvPYtmSs1i+xBXLl57Fr8vPYuWvbli90g2/rXbHb2vcsXaNO9av9cCGdR7YvNELWzZ5s/d7d/vjwvk7uHDuHpYtdsTggZMgLi4JMTEOuFwuI56OHyL/QyK0MRopA21paZnK0dfXjyQBZGVlG1oXSBQgxcXacWAzbSlCgrKxYokvvp/vhh8W8PHjwrNYtNAVPy48g59+cMVPP57Bz4tcsHiRC5YsPoOlv5xhgvy6zBUrl7ti5QpXrP6VL8iaVW74bZUHdmw7h5MnwrF7xyVYjFoIOVlV5vWU0OMTL8WIFyZfuOP9G9BAazBjx46N5Ojp6QVTEktGRqZBuGCigyybxSrIq2Hdag/YHYvF0sU++PYbV8ybcwbffXMG8+e5YMG3Llj4nQu+n++CHxacxo8LT2PR98746Qdnvhg/n8GyX85g6RK+IMuXumLtak8cOnCF5Xe+nrEZKko6LeGGK8WFlJQUg7DnC9A2df1jIAFoe/r48eODOdra2m7NAtQLF1C0kEGHDhJQkO+MWdO3Y+/OcGzeEIoF37pjzkxnfPP1acyb7czHHCd8O9cJ3809hfnzTmHhfBLDmYnx848EFyz95Sx2brvEJlqLf7SDdjd+nBcTawfJDh3QoYMkJCUl3yO/tQB/F6gcsrKy9bQVaPz48W4cTU1NW0rlSktL1wsK2lagGSyH0w562qZYtNARe3fewMrlFzB7pjO+sjmF2bNOYfZMR8ye5YA5sxwwd7YDvvvGEQu+PYXv5jni+/mn8dsqXxywvY61qzwxoM9EiLXr0Oz1Emjfnsjv8B75wgK0FqKt6/shUHnk5OTY7eEmTpxoy+ncufPSZgEa2tIoxWF+WJBk034JcS4GD5yJNSv9sXPbNfz0vSdmTjuFmdNOYtZ0e3w14yRmz7LHnK9OYu5sRyxe5IZdO0KwbVMgxpgvAleSP54XFxdH+/btISHRnpH/IQE+JsTfJYC8vHzD0KHG/OcJdO7c2Ypy6SRA6wKLCoJYTCByJCWlGGkcDgcyvE6YMHYldm4Nxab1wZg7+wy+nHQC06fYwebLE5g35zQ2rruE3TuuYOa0bVBW1GO/a9euHcTFJRj43t+ejfEF5Aujrer1Z7lQUlJijweYPHWqFUddXd1IRUWllpqklJRUU+vCixpEkMBTO3SQhJi4GCNUQ60PFn57GLZ7rmHj+gCsWOaHjesv4cC+q/j5B3voaJmy8MVivbgY83yB9wt7vgBtXY9PqH8T9blmZma1M2fONKJRkKSysnIO9c6SkpKNwpVoKwgIa9++PYvbgtbA4bRH756WWPT9LqxZZY9fftqLwQMmQ1yM29zJikFMTJwdiXyB539IgH8qOnTo0EgLYBYWFjlHjx7lPxRUSUnJgyYIHTp0aHjnnW2P9kwAit8SaC/RAeLNrYEPiRaP57RrB7F2YizstCZfWIB/OqisXK4UG4JaWVnxb95NLwUFhbk0YZKUlCQBmv5K8ts3C/AO7ZkQ1FHTsJI8nk98u5awI/i/wuf4u8n9g3WmdE8D3bDvyy+/fHf7emVlZQ15eflS6iToPwlXrK0hIUS+gGCCINQIo7UArUX4p0NCQqKJUv/m5ual8+fPb3mAA3uMhryc/FnqiNu3b1//vkf+NRAXIv+dCP9J/odE+DeAyszlcuvpUoDWjzBhD/FRVFQ0kZWVpU646UNk/NUQ+4j3/1tBdVBTU2saPnx447Rp0949xEf4kUqysrLeNFkQFxdvaE3AZ4j9aQ6oD+NyuQ3k/ePHj3//MVbCH2RkZIykpaVf0nBJTEysiX74Ge0+iYPm2XoTbXwwNzd/OWXKFPYgtw897JnFI2lp6aXUCiQkJOoFM853Q8PP4PxBDoQFUFZWrqf9Vx99lGHrlsDj8bxo1iYmJlb3mXTOJzmerKxsHSXexo0b9/sP8xR+1KqqqqoMj8eLlJJkIrCW8Bmc/5oDSvFT2tnCwuKPPc62VX+gwuPx4ptbAonQ9FkEzh8lv0lWTo4NOS0sLOK/+uqr/+6p2q1EiCYRxMXFKRx9FoHz++TT4EVJSalu4BcDMcZiTPSfIf89EdTU1KR5PJ538yy5sV27dg2fheB80OspldOlS5dG6nAtLS2958yZI/1nyRcWgf1YWlp6CZfLraYhqoSEREO7du0EYen/c6toIlD2QEVFpaH5JkzVVlZWSwTEfwr5wiKwYZOsrKw+j8fz53K5LG1NU2wxMTFqEYTG/ydiNFFdqd48HreBVhPpMl8TE5PGMWPG+E+dOlVfaKj5yeRzhHpucUEPLicnN5jH47lzudwKwSKDIN/Rrp0YtQ5BCyG0Fuif2mqahNAoKDcNQMTFxespVc/j8RoUFRTZtb6GhobsGQDDhg2rGDNmjPuUKVMGC7hqJv9/He18Ukiil6qqqrqsrOw8mjdwudxcLpdb+6GVrw+nnd/PZgqnbVuvan1oTbf19hK2sep/2WLYesOt8NZzunJFcDkqZSwF94ujLYR0Xwe6nQNt5R8yZEjt8OHDc0ePHu01YcKEeTY2NuoCPkQVcv7IixR+bzZHK2uysrLdeTyeFZfLXSotLW0rLS3tJi0tHUxzCi6Xm8bj8fK5XG4Jj8erlJGRqRPsRhMQI3w1Cl3tIrjwjn8RNv9eDcI3a2p9S8nWN9pmD15ovmV+60elCJ4R1vzEvDpjY+PKoUOHlpiYmOSbmpqm0ROO6DFT9KyvMWPG2FpYWCydMGGClY2NTfclS5bwV7KaX+Txvze7/b3X/wB8u2TRBnG2IAAAAABJRU5ErkJggg==";
|
|
91200
|
+
|
|
91197
91201
|
// src/auth/callback-page.ts
|
|
91198
91202
|
var CONTENT = {
|
|
91199
91203
|
success: {
|
|
91200
91204
|
eyebrow: "CLI connected",
|
|
91201
91205
|
title: "Connected to Scribed",
|
|
91202
91206
|
description: "Your CLI authorization is complete. You can safely close this tab and return to your terminal.",
|
|
91203
|
-
|
|
91207
|
+
commandLabel: "Confirm your active account",
|
|
91208
|
+
command: "scribed whoami",
|
|
91204
91209
|
tone: "success"
|
|
91205
91210
|
},
|
|
91206
91211
|
denied: {
|
|
91207
91212
|
eyebrow: "Authorization stopped",
|
|
91208
91213
|
title: "Authorization wasn’t completed",
|
|
91209
91214
|
description: "No credentials were saved. Return to your terminal when you’re ready to try again.",
|
|
91210
|
-
|
|
91215
|
+
commandLabel: "Start a new sign-in",
|
|
91216
|
+
command: "scribed login",
|
|
91211
91217
|
tone: "error"
|
|
91212
91218
|
},
|
|
91213
91219
|
"invalid-state": {
|
|
91214
91220
|
eyebrow: "Security check failed",
|
|
91215
91221
|
title: "This sign-in attempt couldn’t be verified",
|
|
91216
91222
|
description: "For your security, Scribed rejected this callback. Return to your terminal and start a new login.",
|
|
91217
|
-
|
|
91223
|
+
commandLabel: "Try signing in again",
|
|
91224
|
+
command: "scribed login",
|
|
91218
91225
|
tone: "error"
|
|
91219
91226
|
},
|
|
91220
91227
|
"missing-code": {
|
|
91221
91228
|
eyebrow: "Authorization incomplete",
|
|
91222
91229
|
title: "The authorization response was incomplete",
|
|
91223
91230
|
description: "Scribed did not receive everything needed to connect the CLI. No credentials were saved.",
|
|
91224
|
-
|
|
91231
|
+
commandLabel: "Try signing in again",
|
|
91232
|
+
command: "scribed login",
|
|
91225
91233
|
tone: "error"
|
|
91226
91234
|
},
|
|
91227
91235
|
expired: {
|
|
91228
91236
|
eyebrow: "Authorization expired",
|
|
91229
91237
|
title: "This sign-in window expired",
|
|
91230
91238
|
description: "The CLI stopped waiting before authorization finished. No credentials were saved.",
|
|
91231
|
-
|
|
91239
|
+
commandLabel: "Start a new sign-in",
|
|
91240
|
+
command: "scribed login",
|
|
91232
91241
|
tone: "error"
|
|
91233
91242
|
},
|
|
91234
91243
|
"not-found": {
|
|
91235
91244
|
eyebrow: "Local callback",
|
|
91236
91245
|
title: "This callback page isn’t available",
|
|
91237
91246
|
description: "The local Scribed callback only accepts the active CLI authorization response.",
|
|
91238
|
-
|
|
91247
|
+
commandLabel: "Start a new sign-in",
|
|
91248
|
+
command: "scribed login",
|
|
91239
91249
|
tone: "error"
|
|
91240
91250
|
}
|
|
91241
91251
|
};
|
|
@@ -91249,12 +91259,18 @@ var OAUTH_CALLBACK_SECURITY_HEADERS = {
|
|
|
91249
91259
|
"Cross-Origin-Opener-Policy": "same-origin",
|
|
91250
91260
|
"Cross-Origin-Resource-Policy": "same-origin",
|
|
91251
91261
|
"Permissions-Policy": "accelerometer=(), camera=(), geolocation=(), gyroscope=(), microphone=(), payment=(), usb=()",
|
|
91252
|
-
"Content-Security-Policy": "default-src 'none'; style-src 'unsafe-inline'; img-src
|
|
91262
|
+
"Content-Security-Policy": "default-src 'none'; style-src 'unsafe-inline'; img-src data:; font-src 'none'; script-src 'none'; connect-src 'none'; object-src 'none'; frame-ancestors 'none'; base-uri 'none'; form-action 'none'"
|
|
91253
91263
|
};
|
|
91254
|
-
var BRAND2 = `<span class="brand" role="img" aria-label="Scribed"
|
|
91264
|
+
var BRAND2 = `<span class="brand" role="img" aria-label="Scribed">
|
|
91265
|
+
<picture aria-hidden="true">
|
|
91266
|
+
<source media="(prefers-color-scheme: dark)" srcset="${CALLBACK_ICON_DARK}">
|
|
91267
|
+
<img src="${CALLBACK_ICON_LIGHT}" alt="" width="48" height="48">
|
|
91268
|
+
</picture>
|
|
91269
|
+
<span class="brand-name" aria-hidden="true">SCRIBED</span>
|
|
91270
|
+
</span>`;
|
|
91255
91271
|
function renderOAuthCallbackPage(variant) {
|
|
91256
91272
|
const content = CONTENT[variant];
|
|
91257
|
-
const icon = content.tone === "success" ? '<path d="
|
|
91273
|
+
const icon = content.tone === "success" ? '<path d="m64 136 40 40 88-88"/>' : '<circle cx="128" cy="128" r="96"/><path d="M128 80v56"/><circle cx="128" cy="172" r="12" fill="currentColor" stroke="none"/>';
|
|
91258
91274
|
const statusRole = content.tone === "success" ? "status" : "alert";
|
|
91259
91275
|
return `<!doctype html>
|
|
91260
91276
|
<html lang="en">
|
|
@@ -91263,19 +91279,20 @@ function renderOAuthCallbackPage(variant) {
|
|
|
91263
91279
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
91264
91280
|
<meta name="color-scheme" content="light dark">
|
|
91265
91281
|
<title>${content.title} · Scribed</title>
|
|
91282
|
+
<link rel="icon" type="image/png" href="${CALLBACK_ICON_LIGHT}">
|
|
91266
91283
|
<style>
|
|
91284
|
+
/* Standalone counterparts of the app's astro-vista theme tokens. */
|
|
91267
91285
|
:root {
|
|
91268
91286
|
color-scheme: light dark;
|
|
91269
|
-
--background:
|
|
91270
|
-
--foreground:
|
|
91271
|
-
--card:
|
|
91272
|
-
--muted:
|
|
91273
|
-
--muted-foreground:
|
|
91274
|
-
--border:
|
|
91275
|
-
--
|
|
91276
|
-
--
|
|
91277
|
-
--
|
|
91278
|
-
--shadow: 0 12px 36px rgba(26, 26, 26, 0.12);
|
|
91287
|
+
--background: oklch(0.9842 0.0034 247.8575);
|
|
91288
|
+
--foreground: oklch(0.2103 0.0059 285.8852);
|
|
91289
|
+
--card: oklch(1 0 0);
|
|
91290
|
+
--muted: oklch(0.9684 0.0068 247.8951);
|
|
91291
|
+
--muted-foreground: oklch(0.5547 0.0407 257.4404);
|
|
91292
|
+
--border: oklch(0.929 0.0126 255.5317);
|
|
91293
|
+
--success: oklch(0.508 0.118 165.612);
|
|
91294
|
+
--danger: oklch(0.6368 0.2078 25.3259);
|
|
91295
|
+
--shadow: 0 1px 3px hsl(0 0% 10% / 0.05);
|
|
91279
91296
|
}
|
|
91280
91297
|
* { box-sizing: border-box; }
|
|
91281
91298
|
body {
|
|
@@ -91284,130 +91301,160 @@ function renderOAuthCallbackPage(variant) {
|
|
|
91284
91301
|
min-height: 100svh;
|
|
91285
91302
|
display: grid;
|
|
91286
91303
|
place-items: center;
|
|
91287
|
-
padding:
|
|
91304
|
+
padding: 48px 16px;
|
|
91288
91305
|
background: var(--background);
|
|
91289
91306
|
color: var(--foreground);
|
|
91290
|
-
font-family:
|
|
91307
|
+
font-family: "Inter Variable", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
|
|
91291
91308
|
line-height: 1.5;
|
|
91309
|
+
-webkit-font-smoothing: antialiased;
|
|
91292
91310
|
}
|
|
91293
|
-
main { width: min(100%,
|
|
91311
|
+
main { width: min(100%, 30rem); min-width: 0; }
|
|
91294
91312
|
.card {
|
|
91295
|
-
overflow: hidden;
|
|
91296
91313
|
border: 1px solid var(--border);
|
|
91297
|
-
border-radius:
|
|
91314
|
+
border-radius: 12px;
|
|
91298
91315
|
background: var(--card);
|
|
91299
91316
|
box-shadow: var(--shadow);
|
|
91300
91317
|
}
|
|
91301
91318
|
.brand-row {
|
|
91302
91319
|
display: flex;
|
|
91303
91320
|
align-items: center;
|
|
91304
|
-
|
|
91305
|
-
|
|
91306
|
-
|
|
91307
|
-
background: var(--muted);
|
|
91321
|
+
justify-content: center;
|
|
91322
|
+
gap: 16px;
|
|
91323
|
+
margin-bottom: 32px;
|
|
91308
91324
|
}
|
|
91309
91325
|
.brand {
|
|
91310
91326
|
display: inline-flex;
|
|
91311
91327
|
align-items: center;
|
|
91312
|
-
gap:
|
|
91313
|
-
font-size: 1.
|
|
91328
|
+
gap: 12px;
|
|
91329
|
+
font-size: 1.125rem;
|
|
91314
91330
|
font-weight: 600;
|
|
91315
|
-
letter-spacing:
|
|
91331
|
+
letter-spacing: 0.15em;
|
|
91316
91332
|
}
|
|
91317
|
-
.brand-
|
|
91318
|
-
|
|
91319
|
-
|
|
91320
|
-
|
|
91321
|
-
|
|
91322
|
-
|
|
91333
|
+
.brand picture, .brand img { display: block; flex-shrink: 0; }
|
|
91334
|
+
.product-name {
|
|
91335
|
+
border-left: 1px solid var(--border);
|
|
91336
|
+
padding-left: 16px;
|
|
91337
|
+
color: var(--muted-foreground);
|
|
91338
|
+
font-size: 0.875rem;
|
|
91323
91339
|
}
|
|
91324
91340
|
.content {
|
|
91325
91341
|
display: flex;
|
|
91326
91342
|
flex-direction: column;
|
|
91327
91343
|
align-items: center;
|
|
91328
|
-
gap:
|
|
91329
|
-
padding: 32px
|
|
91344
|
+
gap: 12px;
|
|
91345
|
+
padding: 40px 32px 32px;
|
|
91330
91346
|
text-align: center;
|
|
91331
91347
|
}
|
|
91332
|
-
.
|
|
91333
|
-
|
|
91334
|
-
|
|
91335
|
-
|
|
91336
|
-
place-items: center;
|
|
91337
|
-
border-radius: 8px;
|
|
91338
|
-
background: color-mix(in srgb, var(--primary) 12%, transparent);
|
|
91339
|
-
color: var(--primary);
|
|
91340
|
-
}
|
|
91341
|
-
.error .status-icon {
|
|
91342
|
-
background: color-mix(in srgb, var(--danger) 12%, transparent);
|
|
91343
|
-
color: var(--danger);
|
|
91344
|
-
}
|
|
91345
|
-
.status-icon svg {
|
|
91346
|
-
width: 24px;
|
|
91347
|
-
height: 24px;
|
|
91348
|
+
.icon {
|
|
91349
|
+
width: 16px;
|
|
91350
|
+
height: 16px;
|
|
91351
|
+
flex-shrink: 0;
|
|
91348
91352
|
fill: none;
|
|
91349
91353
|
stroke: currentColor;
|
|
91350
|
-
stroke-width:
|
|
91354
|
+
stroke-width: 16;
|
|
91351
91355
|
stroke-linecap: round;
|
|
91352
91356
|
stroke-linejoin: round;
|
|
91353
91357
|
}
|
|
91354
91358
|
.eyebrow {
|
|
91355
|
-
|
|
91356
|
-
|
|
91359
|
+
display: inline-flex;
|
|
91360
|
+
align-items: center;
|
|
91361
|
+
gap: 8px;
|
|
91362
|
+
margin: 0 0 4px;
|
|
91363
|
+
padding: 4px 12px;
|
|
91364
|
+
border-radius: 100px;
|
|
91365
|
+
background: color-mix(in srgb, var(--success) 8%, var(--card));
|
|
91366
|
+
color: var(--success);
|
|
91357
91367
|
font-size: 0.75rem;
|
|
91358
|
-
font-weight:
|
|
91359
|
-
|
|
91360
|
-
|
|
91368
|
+
font-weight: 600;
|
|
91369
|
+
}
|
|
91370
|
+
.error .eyebrow {
|
|
91371
|
+
background: color-mix(in srgb, var(--danger) 8%, var(--card));
|
|
91372
|
+
color: color-mix(in srgb, var(--danger) 75%, var(--foreground));
|
|
91361
91373
|
}
|
|
91362
|
-
.error .eyebrow { color: var(--danger); }
|
|
91363
91374
|
h1 {
|
|
91364
91375
|
margin: 0;
|
|
91365
|
-
font-size:
|
|
91366
|
-
|
|
91376
|
+
font-size: 1.5rem;
|
|
91377
|
+
font-weight: 600;
|
|
91378
|
+
line-height: 1.3;
|
|
91367
91379
|
letter-spacing: -0.025em;
|
|
91380
|
+
overflow-wrap: anywhere;
|
|
91368
91381
|
}
|
|
91369
91382
|
.description {
|
|
91370
|
-
max-width:
|
|
91383
|
+
max-width: 23rem;
|
|
91371
91384
|
margin: 0;
|
|
91372
91385
|
color: var(--muted-foreground);
|
|
91373
|
-
font-size:
|
|
91386
|
+
font-size: 0.875rem;
|
|
91387
|
+
line-height: 1.7;
|
|
91374
91388
|
}
|
|
91375
|
-
.
|
|
91389
|
+
.terminal {
|
|
91376
91390
|
width: 100%;
|
|
91377
|
-
|
|
91378
|
-
|
|
91391
|
+
min-width: 0;
|
|
91392
|
+
margin-top: 16px;
|
|
91393
|
+
padding: 16px;
|
|
91379
91394
|
border: 1px solid var(--border);
|
|
91380
91395
|
border-radius: 8px;
|
|
91381
91396
|
background: var(--muted);
|
|
91382
91397
|
color: var(--foreground);
|
|
91383
91398
|
font-size: 0.875rem;
|
|
91399
|
+
text-align: left;
|
|
91384
91400
|
}
|
|
91385
|
-
.
|
|
91401
|
+
.terminal-label {
|
|
91402
|
+
display: flex;
|
|
91403
|
+
align-items: center;
|
|
91404
|
+
gap: 8px;
|
|
91405
|
+
margin: 0 0 12px;
|
|
91406
|
+
color: var(--muted-foreground);
|
|
91407
|
+
font-size: 0.75rem;
|
|
91408
|
+
}
|
|
91409
|
+
.command {
|
|
91410
|
+
display: flex;
|
|
91411
|
+
align-items: baseline;
|
|
91412
|
+
gap: 12px;
|
|
91386
91413
|
margin: 0;
|
|
91387
|
-
|
|
91388
|
-
|
|
91414
|
+
}
|
|
91415
|
+
.prompt { color: var(--muted-foreground); user-select: none; }
|
|
91416
|
+
.terminal-hint {
|
|
91417
|
+
margin: 12px 0 0;
|
|
91418
|
+
color: var(--muted-foreground);
|
|
91419
|
+
font-size: 0.75rem;
|
|
91420
|
+
}
|
|
91421
|
+
.terminal-label, .terminal-hint {
|
|
91422
|
+
color: color-mix(in srgb, var(--muted-foreground) 80%, var(--foreground));
|
|
91423
|
+
}
|
|
91424
|
+
.local-note {
|
|
91425
|
+
display: flex;
|
|
91426
|
+
flex-wrap: wrap;
|
|
91427
|
+
align-items: center;
|
|
91428
|
+
justify-content: center;
|
|
91429
|
+
gap: 4px 8px;
|
|
91430
|
+
margin: 20px 0 0;
|
|
91389
91431
|
color: var(--muted-foreground);
|
|
91390
91432
|
font-size: 0.75rem;
|
|
91391
91433
|
text-align: center;
|
|
91392
91434
|
}
|
|
91435
|
+
.local-note span { display: inline-flex; align-items: center; gap: 4px; }
|
|
91393
91436
|
code {
|
|
91394
|
-
|
|
91395
|
-
font-
|
|
91437
|
+
min-width: 0;
|
|
91438
|
+
font-family: "Fira Code Variable", "Fira Code", ui-monospace, "SFMono-Regular", Consolas, monospace;
|
|
91439
|
+
font-size: 0.875rem;
|
|
91440
|
+
overflow-wrap: anywhere;
|
|
91441
|
+
user-select: all;
|
|
91396
91442
|
}
|
|
91397
91443
|
@media (max-width: 420px) {
|
|
91398
|
-
|
|
91399
|
-
.
|
|
91400
|
-
.
|
|
91444
|
+
.content { padding: 32px 16px 16px; }
|
|
91445
|
+
.local-note { flex-direction: column; gap: 8px; }
|
|
91446
|
+
.local-note .separator { display: none; }
|
|
91401
91447
|
}
|
|
91402
91448
|
@media (prefers-color-scheme: dark) {
|
|
91403
91449
|
:root {
|
|
91404
|
-
--background:
|
|
91405
|
-
--foreground:
|
|
91406
|
-
--card:
|
|
91407
|
-
--muted:
|
|
91408
|
-
--muted-foreground:
|
|
91409
|
-
--border:
|
|
91410
|
-
--
|
|
91450
|
+
--background: oklch(0.2686 0 0);
|
|
91451
|
+
--foreground: oklch(0.9848 0 0);
|
|
91452
|
+
--card: oklch(0.3092 0 0);
|
|
91453
|
+
--muted: oklch(0.2686 0 0);
|
|
91454
|
+
--muted-foreground: oklch(0.7153 0 0);
|
|
91455
|
+
--border: oklch(0.3705 0 0);
|
|
91456
|
+
--success: oklch(0.765 0.177 163.223);
|
|
91457
|
+
--danger: oklch(0.704 0.191 22.216);
|
|
91411
91458
|
}
|
|
91412
91459
|
}
|
|
91413
91460
|
@media (prefers-reduced-motion: reduce) {
|
|
@@ -91421,19 +91468,20 @@ function renderOAuthCallbackPage(variant) {
|
|
|
91421
91468
|
</head>
|
|
91422
91469
|
<body>
|
|
91423
91470
|
<main aria-labelledby="callback-title">
|
|
91424
|
-
<
|
|
91425
|
-
|
|
91471
|
+
<header class="brand-row">${BRAND2}<span class="product-name">CLI</span></header>
|
|
91472
|
+
<section class="card ${content.tone}" role="${statusRole}">
|
|
91426
91473
|
<div class="content">
|
|
91427
|
-
<
|
|
91428
|
-
<svg viewBox="0 0 24 24">${icon}</svg>
|
|
91429
|
-
</span>
|
|
91430
|
-
<p class="eyebrow">${content.eyebrow}</p>
|
|
91474
|
+
<p class="eyebrow"><svg class="icon" viewBox="0 0 256 256" aria-hidden="true">${icon}</svg>${content.eyebrow}</p>
|
|
91431
91475
|
<h1 id="callback-title">${content.title}</h1>
|
|
91432
91476
|
<p class="description">${content.description}</p>
|
|
91433
|
-
<
|
|
91477
|
+
<div class="terminal">
|
|
91478
|
+
<p class="terminal-label"><svg class="icon" viewBox="0 0 256 256" aria-hidden="true"><path d="m40 64 72 64-72 64m104 0h72"/></svg>${content.commandLabel}</p>
|
|
91479
|
+
<p class="command"><span class="prompt" aria-hidden="true">$</span><code>${content.command}</code></p>
|
|
91480
|
+
<p class="terminal-hint">Run this command in your terminal.</p>
|
|
91481
|
+
</div>
|
|
91434
91482
|
</div>
|
|
91435
|
-
<p class="local-note">Secure local callback · No tracking or external requests</p>
|
|
91436
91483
|
</section>
|
|
91484
|
+
<p class="local-note"><span><svg class="icon" viewBox="0 0 256 256" aria-hidden="true"><rect x="48" y="112" width="160" height="104" rx="16"/><path d="M80 112V72a48 48 0 0 1 96 0v40"/></svg>Secure local connection</span><span class="separator" aria-hidden="true">·</span><span>No tracking or external requests</span></p>
|
|
91437
91485
|
</main>
|
|
91438
91486
|
</body>
|
|
91439
91487
|
</html>`;
|
package/dist/mcp/server.js
CHANGED
|
@@ -70177,7 +70177,7 @@ class StdioServerTransport {
|
|
|
70177
70177
|
// package.json
|
|
70178
70178
|
var package_default = {
|
|
70179
70179
|
name: "@scribed/cli",
|
|
70180
|
-
version: "0.1.
|
|
70180
|
+
version: "0.1.7",
|
|
70181
70181
|
description: "Command-line client + MCP server for Scribed — CRM records, phone + texting, inbox, calendar + booking, transcriptions, HR, Vault, automations, Creative Studio, and Documents, derived from the scribed-agent tool catalog.",
|
|
70182
70182
|
type: "module",
|
|
70183
70183
|
license: "SEE LICENSE IN LICENSE",
|
|
@@ -90806,48 +90806,58 @@ import { createHash as createHash2, randomBytes } from "node:crypto";
|
|
|
90806
90806
|
import { createServer } from "node:http";
|
|
90807
90807
|
import { spawn } from "node:child_process";
|
|
90808
90808
|
|
|
90809
|
+
// src/auth/callback-brand.ts
|
|
90810
|
+
var CALLBACK_ICON_LIGHT = "data:image/png;base64,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";
|
|
90811
|
+
var CALLBACK_ICON_DARK = "data:image/png;base64,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";
|
|
90812
|
+
|
|
90809
90813
|
// src/auth/callback-page.ts
|
|
90810
90814
|
var CONTENT = {
|
|
90811
90815
|
success: {
|
|
90812
90816
|
eyebrow: "CLI connected",
|
|
90813
90817
|
title: "Connected to Scribed",
|
|
90814
90818
|
description: "Your CLI authorization is complete. You can safely close this tab and return to your terminal.",
|
|
90815
|
-
|
|
90819
|
+
commandLabel: "Confirm your active account",
|
|
90820
|
+
command: "scribed whoami",
|
|
90816
90821
|
tone: "success"
|
|
90817
90822
|
},
|
|
90818
90823
|
denied: {
|
|
90819
90824
|
eyebrow: "Authorization stopped",
|
|
90820
90825
|
title: "Authorization wasn’t completed",
|
|
90821
90826
|
description: "No credentials were saved. Return to your terminal when you’re ready to try again.",
|
|
90822
|
-
|
|
90827
|
+
commandLabel: "Start a new sign-in",
|
|
90828
|
+
command: "scribed login",
|
|
90823
90829
|
tone: "error"
|
|
90824
90830
|
},
|
|
90825
90831
|
"invalid-state": {
|
|
90826
90832
|
eyebrow: "Security check failed",
|
|
90827
90833
|
title: "This sign-in attempt couldn’t be verified",
|
|
90828
90834
|
description: "For your security, Scribed rejected this callback. Return to your terminal and start a new login.",
|
|
90829
|
-
|
|
90835
|
+
commandLabel: "Try signing in again",
|
|
90836
|
+
command: "scribed login",
|
|
90830
90837
|
tone: "error"
|
|
90831
90838
|
},
|
|
90832
90839
|
"missing-code": {
|
|
90833
90840
|
eyebrow: "Authorization incomplete",
|
|
90834
90841
|
title: "The authorization response was incomplete",
|
|
90835
90842
|
description: "Scribed did not receive everything needed to connect the CLI. No credentials were saved.",
|
|
90836
|
-
|
|
90843
|
+
commandLabel: "Try signing in again",
|
|
90844
|
+
command: "scribed login",
|
|
90837
90845
|
tone: "error"
|
|
90838
90846
|
},
|
|
90839
90847
|
expired: {
|
|
90840
90848
|
eyebrow: "Authorization expired",
|
|
90841
90849
|
title: "This sign-in window expired",
|
|
90842
90850
|
description: "The CLI stopped waiting before authorization finished. No credentials were saved.",
|
|
90843
|
-
|
|
90851
|
+
commandLabel: "Start a new sign-in",
|
|
90852
|
+
command: "scribed login",
|
|
90844
90853
|
tone: "error"
|
|
90845
90854
|
},
|
|
90846
90855
|
"not-found": {
|
|
90847
90856
|
eyebrow: "Local callback",
|
|
90848
90857
|
title: "This callback page isn’t available",
|
|
90849
90858
|
description: "The local Scribed callback only accepts the active CLI authorization response.",
|
|
90850
|
-
|
|
90859
|
+
commandLabel: "Start a new sign-in",
|
|
90860
|
+
command: "scribed login",
|
|
90851
90861
|
tone: "error"
|
|
90852
90862
|
}
|
|
90853
90863
|
};
|
|
@@ -90861,12 +90871,18 @@ var OAUTH_CALLBACK_SECURITY_HEADERS = {
|
|
|
90861
90871
|
"Cross-Origin-Opener-Policy": "same-origin",
|
|
90862
90872
|
"Cross-Origin-Resource-Policy": "same-origin",
|
|
90863
90873
|
"Permissions-Policy": "accelerometer=(), camera=(), geolocation=(), gyroscope=(), microphone=(), payment=(), usb=()",
|
|
90864
|
-
"Content-Security-Policy": "default-src 'none'; style-src 'unsafe-inline'; img-src
|
|
90874
|
+
"Content-Security-Policy": "default-src 'none'; style-src 'unsafe-inline'; img-src data:; font-src 'none'; script-src 'none'; connect-src 'none'; object-src 'none'; frame-ancestors 'none'; base-uri 'none'; form-action 'none'"
|
|
90865
90875
|
};
|
|
90866
|
-
var BRAND2 = `<span class="brand" role="img" aria-label="Scribed"
|
|
90876
|
+
var BRAND2 = `<span class="brand" role="img" aria-label="Scribed">
|
|
90877
|
+
<picture aria-hidden="true">
|
|
90878
|
+
<source media="(prefers-color-scheme: dark)" srcset="${CALLBACK_ICON_DARK}">
|
|
90879
|
+
<img src="${CALLBACK_ICON_LIGHT}" alt="" width="48" height="48">
|
|
90880
|
+
</picture>
|
|
90881
|
+
<span class="brand-name" aria-hidden="true">SCRIBED</span>
|
|
90882
|
+
</span>`;
|
|
90867
90883
|
function renderOAuthCallbackPage(variant) {
|
|
90868
90884
|
const content = CONTENT[variant];
|
|
90869
|
-
const icon = content.tone === "success" ? '<path d="
|
|
90885
|
+
const icon = content.tone === "success" ? '<path d="m64 136 40 40 88-88"/>' : '<circle cx="128" cy="128" r="96"/><path d="M128 80v56"/><circle cx="128" cy="172" r="12" fill="currentColor" stroke="none"/>';
|
|
90870
90886
|
const statusRole = content.tone === "success" ? "status" : "alert";
|
|
90871
90887
|
return `<!doctype html>
|
|
90872
90888
|
<html lang="en">
|
|
@@ -90875,19 +90891,20 @@ function renderOAuthCallbackPage(variant) {
|
|
|
90875
90891
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
90876
90892
|
<meta name="color-scheme" content="light dark">
|
|
90877
90893
|
<title>${content.title} · Scribed</title>
|
|
90894
|
+
<link rel="icon" type="image/png" href="${CALLBACK_ICON_LIGHT}">
|
|
90878
90895
|
<style>
|
|
90896
|
+
/* Standalone counterparts of the app's astro-vista theme tokens. */
|
|
90879
90897
|
:root {
|
|
90880
90898
|
color-scheme: light dark;
|
|
90881
|
-
--background:
|
|
90882
|
-
--foreground:
|
|
90883
|
-
--card:
|
|
90884
|
-
--muted:
|
|
90885
|
-
--muted-foreground:
|
|
90886
|
-
--border:
|
|
90887
|
-
--
|
|
90888
|
-
--
|
|
90889
|
-
--
|
|
90890
|
-
--shadow: 0 12px 36px rgba(26, 26, 26, 0.12);
|
|
90899
|
+
--background: oklch(0.9842 0.0034 247.8575);
|
|
90900
|
+
--foreground: oklch(0.2103 0.0059 285.8852);
|
|
90901
|
+
--card: oklch(1 0 0);
|
|
90902
|
+
--muted: oklch(0.9684 0.0068 247.8951);
|
|
90903
|
+
--muted-foreground: oklch(0.5547 0.0407 257.4404);
|
|
90904
|
+
--border: oklch(0.929 0.0126 255.5317);
|
|
90905
|
+
--success: oklch(0.508 0.118 165.612);
|
|
90906
|
+
--danger: oklch(0.6368 0.2078 25.3259);
|
|
90907
|
+
--shadow: 0 1px 3px hsl(0 0% 10% / 0.05);
|
|
90891
90908
|
}
|
|
90892
90909
|
* { box-sizing: border-box; }
|
|
90893
90910
|
body {
|
|
@@ -90896,130 +90913,160 @@ function renderOAuthCallbackPage(variant) {
|
|
|
90896
90913
|
min-height: 100svh;
|
|
90897
90914
|
display: grid;
|
|
90898
90915
|
place-items: center;
|
|
90899
|
-
padding:
|
|
90916
|
+
padding: 48px 16px;
|
|
90900
90917
|
background: var(--background);
|
|
90901
90918
|
color: var(--foreground);
|
|
90902
|
-
font-family:
|
|
90919
|
+
font-family: "Inter Variable", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
|
|
90903
90920
|
line-height: 1.5;
|
|
90921
|
+
-webkit-font-smoothing: antialiased;
|
|
90904
90922
|
}
|
|
90905
|
-
main { width: min(100%,
|
|
90923
|
+
main { width: min(100%, 30rem); min-width: 0; }
|
|
90906
90924
|
.card {
|
|
90907
|
-
overflow: hidden;
|
|
90908
90925
|
border: 1px solid var(--border);
|
|
90909
|
-
border-radius:
|
|
90926
|
+
border-radius: 12px;
|
|
90910
90927
|
background: var(--card);
|
|
90911
90928
|
box-shadow: var(--shadow);
|
|
90912
90929
|
}
|
|
90913
90930
|
.brand-row {
|
|
90914
90931
|
display: flex;
|
|
90915
90932
|
align-items: center;
|
|
90916
|
-
|
|
90917
|
-
|
|
90918
|
-
|
|
90919
|
-
background: var(--muted);
|
|
90933
|
+
justify-content: center;
|
|
90934
|
+
gap: 16px;
|
|
90935
|
+
margin-bottom: 32px;
|
|
90920
90936
|
}
|
|
90921
90937
|
.brand {
|
|
90922
90938
|
display: inline-flex;
|
|
90923
90939
|
align-items: center;
|
|
90924
|
-
gap:
|
|
90925
|
-
font-size: 1.
|
|
90940
|
+
gap: 12px;
|
|
90941
|
+
font-size: 1.125rem;
|
|
90926
90942
|
font-weight: 600;
|
|
90927
|
-
letter-spacing:
|
|
90943
|
+
letter-spacing: 0.15em;
|
|
90928
90944
|
}
|
|
90929
|
-
.brand-
|
|
90930
|
-
|
|
90931
|
-
|
|
90932
|
-
|
|
90933
|
-
|
|
90934
|
-
|
|
90945
|
+
.brand picture, .brand img { display: block; flex-shrink: 0; }
|
|
90946
|
+
.product-name {
|
|
90947
|
+
border-left: 1px solid var(--border);
|
|
90948
|
+
padding-left: 16px;
|
|
90949
|
+
color: var(--muted-foreground);
|
|
90950
|
+
font-size: 0.875rem;
|
|
90935
90951
|
}
|
|
90936
90952
|
.content {
|
|
90937
90953
|
display: flex;
|
|
90938
90954
|
flex-direction: column;
|
|
90939
90955
|
align-items: center;
|
|
90940
|
-
gap:
|
|
90941
|
-
padding: 32px
|
|
90956
|
+
gap: 12px;
|
|
90957
|
+
padding: 40px 32px 32px;
|
|
90942
90958
|
text-align: center;
|
|
90943
90959
|
}
|
|
90944
|
-
.
|
|
90945
|
-
|
|
90946
|
-
|
|
90947
|
-
|
|
90948
|
-
place-items: center;
|
|
90949
|
-
border-radius: 8px;
|
|
90950
|
-
background: color-mix(in srgb, var(--primary) 12%, transparent);
|
|
90951
|
-
color: var(--primary);
|
|
90952
|
-
}
|
|
90953
|
-
.error .status-icon {
|
|
90954
|
-
background: color-mix(in srgb, var(--danger) 12%, transparent);
|
|
90955
|
-
color: var(--danger);
|
|
90956
|
-
}
|
|
90957
|
-
.status-icon svg {
|
|
90958
|
-
width: 24px;
|
|
90959
|
-
height: 24px;
|
|
90960
|
+
.icon {
|
|
90961
|
+
width: 16px;
|
|
90962
|
+
height: 16px;
|
|
90963
|
+
flex-shrink: 0;
|
|
90960
90964
|
fill: none;
|
|
90961
90965
|
stroke: currentColor;
|
|
90962
|
-
stroke-width:
|
|
90966
|
+
stroke-width: 16;
|
|
90963
90967
|
stroke-linecap: round;
|
|
90964
90968
|
stroke-linejoin: round;
|
|
90965
90969
|
}
|
|
90966
90970
|
.eyebrow {
|
|
90967
|
-
|
|
90968
|
-
|
|
90971
|
+
display: inline-flex;
|
|
90972
|
+
align-items: center;
|
|
90973
|
+
gap: 8px;
|
|
90974
|
+
margin: 0 0 4px;
|
|
90975
|
+
padding: 4px 12px;
|
|
90976
|
+
border-radius: 100px;
|
|
90977
|
+
background: color-mix(in srgb, var(--success) 8%, var(--card));
|
|
90978
|
+
color: var(--success);
|
|
90969
90979
|
font-size: 0.75rem;
|
|
90970
|
-
font-weight:
|
|
90971
|
-
|
|
90972
|
-
|
|
90980
|
+
font-weight: 600;
|
|
90981
|
+
}
|
|
90982
|
+
.error .eyebrow {
|
|
90983
|
+
background: color-mix(in srgb, var(--danger) 8%, var(--card));
|
|
90984
|
+
color: color-mix(in srgb, var(--danger) 75%, var(--foreground));
|
|
90973
90985
|
}
|
|
90974
|
-
.error .eyebrow { color: var(--danger); }
|
|
90975
90986
|
h1 {
|
|
90976
90987
|
margin: 0;
|
|
90977
|
-
font-size:
|
|
90978
|
-
|
|
90988
|
+
font-size: 1.5rem;
|
|
90989
|
+
font-weight: 600;
|
|
90990
|
+
line-height: 1.3;
|
|
90979
90991
|
letter-spacing: -0.025em;
|
|
90992
|
+
overflow-wrap: anywhere;
|
|
90980
90993
|
}
|
|
90981
90994
|
.description {
|
|
90982
|
-
max-width:
|
|
90995
|
+
max-width: 23rem;
|
|
90983
90996
|
margin: 0;
|
|
90984
90997
|
color: var(--muted-foreground);
|
|
90985
|
-
font-size:
|
|
90998
|
+
font-size: 0.875rem;
|
|
90999
|
+
line-height: 1.7;
|
|
90986
91000
|
}
|
|
90987
|
-
.
|
|
91001
|
+
.terminal {
|
|
90988
91002
|
width: 100%;
|
|
90989
|
-
|
|
90990
|
-
|
|
91003
|
+
min-width: 0;
|
|
91004
|
+
margin-top: 16px;
|
|
91005
|
+
padding: 16px;
|
|
90991
91006
|
border: 1px solid var(--border);
|
|
90992
91007
|
border-radius: 8px;
|
|
90993
91008
|
background: var(--muted);
|
|
90994
91009
|
color: var(--foreground);
|
|
90995
91010
|
font-size: 0.875rem;
|
|
91011
|
+
text-align: left;
|
|
90996
91012
|
}
|
|
90997
|
-
.
|
|
91013
|
+
.terminal-label {
|
|
91014
|
+
display: flex;
|
|
91015
|
+
align-items: center;
|
|
91016
|
+
gap: 8px;
|
|
91017
|
+
margin: 0 0 12px;
|
|
91018
|
+
color: var(--muted-foreground);
|
|
91019
|
+
font-size: 0.75rem;
|
|
91020
|
+
}
|
|
91021
|
+
.command {
|
|
91022
|
+
display: flex;
|
|
91023
|
+
align-items: baseline;
|
|
91024
|
+
gap: 12px;
|
|
90998
91025
|
margin: 0;
|
|
90999
|
-
|
|
91000
|
-
|
|
91026
|
+
}
|
|
91027
|
+
.prompt { color: var(--muted-foreground); user-select: none; }
|
|
91028
|
+
.terminal-hint {
|
|
91029
|
+
margin: 12px 0 0;
|
|
91030
|
+
color: var(--muted-foreground);
|
|
91031
|
+
font-size: 0.75rem;
|
|
91032
|
+
}
|
|
91033
|
+
.terminal-label, .terminal-hint {
|
|
91034
|
+
color: color-mix(in srgb, var(--muted-foreground) 80%, var(--foreground));
|
|
91035
|
+
}
|
|
91036
|
+
.local-note {
|
|
91037
|
+
display: flex;
|
|
91038
|
+
flex-wrap: wrap;
|
|
91039
|
+
align-items: center;
|
|
91040
|
+
justify-content: center;
|
|
91041
|
+
gap: 4px 8px;
|
|
91042
|
+
margin: 20px 0 0;
|
|
91001
91043
|
color: var(--muted-foreground);
|
|
91002
91044
|
font-size: 0.75rem;
|
|
91003
91045
|
text-align: center;
|
|
91004
91046
|
}
|
|
91047
|
+
.local-note span { display: inline-flex; align-items: center; gap: 4px; }
|
|
91005
91048
|
code {
|
|
91006
|
-
|
|
91007
|
-
font-
|
|
91049
|
+
min-width: 0;
|
|
91050
|
+
font-family: "Fira Code Variable", "Fira Code", ui-monospace, "SFMono-Regular", Consolas, monospace;
|
|
91051
|
+
font-size: 0.875rem;
|
|
91052
|
+
overflow-wrap: anywhere;
|
|
91053
|
+
user-select: all;
|
|
91008
91054
|
}
|
|
91009
91055
|
@media (max-width: 420px) {
|
|
91010
|
-
|
|
91011
|
-
.
|
|
91012
|
-
.
|
|
91056
|
+
.content { padding: 32px 16px 16px; }
|
|
91057
|
+
.local-note { flex-direction: column; gap: 8px; }
|
|
91058
|
+
.local-note .separator { display: none; }
|
|
91013
91059
|
}
|
|
91014
91060
|
@media (prefers-color-scheme: dark) {
|
|
91015
91061
|
:root {
|
|
91016
|
-
--background:
|
|
91017
|
-
--foreground:
|
|
91018
|
-
--card:
|
|
91019
|
-
--muted:
|
|
91020
|
-
--muted-foreground:
|
|
91021
|
-
--border:
|
|
91022
|
-
--
|
|
91062
|
+
--background: oklch(0.2686 0 0);
|
|
91063
|
+
--foreground: oklch(0.9848 0 0);
|
|
91064
|
+
--card: oklch(0.3092 0 0);
|
|
91065
|
+
--muted: oklch(0.2686 0 0);
|
|
91066
|
+
--muted-foreground: oklch(0.7153 0 0);
|
|
91067
|
+
--border: oklch(0.3705 0 0);
|
|
91068
|
+
--success: oklch(0.765 0.177 163.223);
|
|
91069
|
+
--danger: oklch(0.704 0.191 22.216);
|
|
91023
91070
|
}
|
|
91024
91071
|
}
|
|
91025
91072
|
@media (prefers-reduced-motion: reduce) {
|
|
@@ -91033,19 +91080,20 @@ function renderOAuthCallbackPage(variant) {
|
|
|
91033
91080
|
</head>
|
|
91034
91081
|
<body>
|
|
91035
91082
|
<main aria-labelledby="callback-title">
|
|
91036
|
-
<
|
|
91037
|
-
|
|
91083
|
+
<header class="brand-row">${BRAND2}<span class="product-name">CLI</span></header>
|
|
91084
|
+
<section class="card ${content.tone}" role="${statusRole}">
|
|
91038
91085
|
<div class="content">
|
|
91039
|
-
<
|
|
91040
|
-
<svg viewBox="0 0 24 24">${icon}</svg>
|
|
91041
|
-
</span>
|
|
91042
|
-
<p class="eyebrow">${content.eyebrow}</p>
|
|
91086
|
+
<p class="eyebrow"><svg class="icon" viewBox="0 0 256 256" aria-hidden="true">${icon}</svg>${content.eyebrow}</p>
|
|
91043
91087
|
<h1 id="callback-title">${content.title}</h1>
|
|
91044
91088
|
<p class="description">${content.description}</p>
|
|
91045
|
-
<
|
|
91089
|
+
<div class="terminal">
|
|
91090
|
+
<p class="terminal-label"><svg class="icon" viewBox="0 0 256 256" aria-hidden="true"><path d="m40 64 72 64-72 64m104 0h72"/></svg>${content.commandLabel}</p>
|
|
91091
|
+
<p class="command"><span class="prompt" aria-hidden="true">$</span><code>${content.command}</code></p>
|
|
91092
|
+
<p class="terminal-hint">Run this command in your terminal.</p>
|
|
91093
|
+
</div>
|
|
91046
91094
|
</div>
|
|
91047
|
-
<p class="local-note">Secure local callback · No tracking or external requests</p>
|
|
91048
91095
|
</section>
|
|
91096
|
+
<p class="local-note"><span><svg class="icon" viewBox="0 0 256 256" aria-hidden="true"><rect x="48" y="112" width="160" height="104" rx="16"/><path d="M80 112V72a48 48 0 0 1 96 0v40"/></svg>Secure local connection</span><span class="separator" aria-hidden="true">·</span><span>No tracking or external requests</span></p>
|
|
91049
91097
|
</main>
|
|
91050
91098
|
</body>
|
|
91051
91099
|
</html>`;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@scribed/cli",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.7",
|
|
4
4
|
"description": "Command-line client + MCP server for Scribed — CRM records, phone + texting, inbox, calendar + booking, transcriptions, HR, Vault, automations, Creative Studio, and Documents, derived from the scribed-agent tool catalog.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "SEE LICENSE IN LICENSE",
|
|
@@ -39,9 +39,9 @@
|
|
|
39
39
|
"url": "git+https://github.com/q6th/scribed-web.git",
|
|
40
40
|
"directory": "scribed-cli"
|
|
41
41
|
},
|
|
42
|
-
"gitHead": "
|
|
42
|
+
"gitHead": "edb070a4c798b08deb229a15486d068947859cd0",
|
|
43
43
|
"scribedRelease": {
|
|
44
44
|
"repository": "q6th/scribed-web",
|
|
45
|
-
"commit": "
|
|
45
|
+
"commit": "edb070a4c798b08deb229a15486d068947859cd0"
|
|
46
46
|
}
|
|
47
47
|
}
|