@agiflowai/agent-cli 0.1.2 → 0.1.3
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/claudeNotification.js +2252 -2119
- package/dist/claudePermissionRequest.js +2294 -2161
- package/dist/claudePostToolUse.js +2241 -2110
- package/dist/claudePreToolUse.js +2267 -2134
- package/dist/claudeSessionEnd.js +13663 -0
- package/dist/claudeSessionStart.js +2345 -2212
- package/dist/claudeStop.js +9131 -8867
- package/dist/cli.js +1 -1
- package/dist/daemon.js +16 -12
- package/dist/daemon.js.map +1 -1
- package/dist/{index-ChHzlMc5.mjs → index-C5IMvcG5.mjs} +4 -4
- package/dist/index-C5IMvcG5.mjs.map +1 -0
- package/dist/index-OxXz4OF7.mjs +59 -0
- package/dist/index-OxXz4OF7.mjs.map +1 -0
- package/dist/{index-hTObhXhf.mjs → index-luh8DEZU.mjs} +7020 -6413
- package/dist/index-luh8DEZU.mjs.map +1 -0
- package/dist/index.js +39 -37
- package/dist/package.json +2 -2
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/dist/index-ChHzlMc5.mjs.map +0 -1
- package/dist/index-DjxppRF1.mjs +0 -58
- package/dist/index-DjxppRF1.mjs.map +0 -1
- package/dist/index-hTObhXhf.mjs.map +0 -1
package/dist/cli.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import {
|
|
2
|
+
import { bu as z, bl as H, bv as P, bm as M } from "./index-luh8DEZU.mjs";
|
|
3
3
|
import Q from "node:events";
|
|
4
4
|
import X from "node:child_process";
|
|
5
5
|
import Z from "node:path";
|
package/dist/daemon.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { bg as g, bh as O, bi as e, bj as C, bk as T, bl as y, bm as w, bn as A, bo as I, bp as B, bq as M, br as P, bs as L, bt as _ } from "./index-luh8DEZU.mjs";
|
|
2
2
|
import { useQueryClient as R, useQuery as F, useMutation as E, QueryClientProvider as q, QueryClient as z } from "@tanstack/react-query";
|
|
3
3
|
import { useDispatch as K, useSelector as N, Provider as $ } from "react-redux";
|
|
4
4
|
import { useRef as U, useEffect as V, useState as D } from "react";
|
|
@@ -787,52 +787,56 @@ const G = ({ children: i }) => {
|
|
|
787
787
|
defaultOptions: {
|
|
788
788
|
queries: {
|
|
789
789
|
retry: !1,
|
|
790
|
-
refetchOnWindowFocus: !1
|
|
790
|
+
refetchOnWindowFocus: !1,
|
|
791
|
+
gcTime: 300 * 1e3,
|
|
792
|
+
// Garbage collect unused queries after 5 minutes
|
|
793
|
+
staleTime: 30 * 1e3
|
|
794
|
+
// Consider data stale after 30 seconds
|
|
791
795
|
}
|
|
792
796
|
}
|
|
793
797
|
}), Z = () => {
|
|
794
798
|
const { Box: i } = g(), s = N((o) => o.agentTabs.tabs).length > 0;
|
|
795
799
|
return /* @__PURE__ */ e.jsxDEV(W, { children: ({ isAuthenticated: o }) => /* @__PURE__ */ e.jsxDEV(G, { children: /* @__PURE__ */ e.jsxDEV(i, { flexGrow: 1, flexDirection: "column", children: o && !s ? /* @__PURE__ */ e.jsxDEV(Y, {}, void 0, !1, {
|
|
796
800
|
fileName: "/Users/vuongngo/workspace/monorepo/apps/agent-cli/src/systems/cli/apps/daemon/index.tsx",
|
|
797
|
-
lineNumber:
|
|
801
|
+
lineNumber: 35,
|
|
798
802
|
columnNumber: 49
|
|
799
803
|
}, void 0) : /* @__PURE__ */ e.jsxDEV(X, {}, void 0, !1, {
|
|
800
804
|
fileName: "/Users/vuongngo/workspace/monorepo/apps/agent-cli/src/systems/cli/apps/daemon/index.tsx",
|
|
801
|
-
lineNumber:
|
|
805
|
+
lineNumber: 35,
|
|
802
806
|
columnNumber: 66
|
|
803
807
|
}, void 0) }, void 0, !1, {
|
|
804
808
|
fileName: "/Users/vuongngo/workspace/monorepo/apps/agent-cli/src/systems/cli/apps/daemon/index.tsx",
|
|
805
|
-
lineNumber:
|
|
809
|
+
lineNumber: 34,
|
|
806
810
|
columnNumber: 11
|
|
807
811
|
}, void 0) }, void 0, !1, {
|
|
808
812
|
fileName: "/Users/vuongngo/workspace/monorepo/apps/agent-cli/src/systems/cli/apps/daemon/index.tsx",
|
|
809
|
-
lineNumber:
|
|
813
|
+
lineNumber: 33,
|
|
810
814
|
columnNumber: 9
|
|
811
815
|
}, void 0) }, void 0, !1, {
|
|
812
816
|
fileName: "/Users/vuongngo/workspace/monorepo/apps/agent-cli/src/systems/cli/apps/daemon/index.tsx",
|
|
813
|
-
lineNumber:
|
|
817
|
+
lineNumber: 31,
|
|
814
818
|
columnNumber: 5
|
|
815
819
|
}, void 0);
|
|
816
820
|
}, ee = () => /* @__PURE__ */ e.jsxDEV(L, { children: /* @__PURE__ */ e.jsxDEV($, { store: _, children: /* @__PURE__ */ e.jsxDEV(q, { client: H, children: /* @__PURE__ */ e.jsxDEV(Z, {}, void 0, !1, {
|
|
817
821
|
fileName: "/Users/vuongngo/workspace/monorepo/apps/agent-cli/src/systems/cli/apps/daemon/index.tsx",
|
|
818
|
-
lineNumber:
|
|
822
|
+
lineNumber: 48,
|
|
819
823
|
columnNumber: 11
|
|
820
824
|
}, void 0) }, void 0, !1, {
|
|
821
825
|
fileName: "/Users/vuongngo/workspace/monorepo/apps/agent-cli/src/systems/cli/apps/daemon/index.tsx",
|
|
822
|
-
lineNumber:
|
|
826
|
+
lineNumber: 47,
|
|
823
827
|
columnNumber: 9
|
|
824
828
|
}, void 0) }, void 0, !1, {
|
|
825
829
|
fileName: "/Users/vuongngo/workspace/monorepo/apps/agent-cli/src/systems/cli/apps/daemon/index.tsx",
|
|
826
|
-
lineNumber:
|
|
830
|
+
lineNumber: 46,
|
|
827
831
|
columnNumber: 7
|
|
828
832
|
}, void 0) }, void 0, !1, {
|
|
829
833
|
fileName: "/Users/vuongngo/workspace/monorepo/apps/agent-cli/src/systems/cli/apps/daemon/index.tsx",
|
|
830
|
-
lineNumber:
|
|
834
|
+
lineNumber: 45,
|
|
831
835
|
columnNumber: 5
|
|
832
836
|
}, void 0), ae = async () => {
|
|
833
837
|
const { render: i } = await import("ink"), { waitUntilExit: n } = i(/* @__PURE__ */ e.jsxDEV(ee, {}, void 0, !1, {
|
|
834
838
|
fileName: "/Users/vuongngo/workspace/monorepo/apps/agent-cli/src/systems/cli/apps/daemon/index.tsx",
|
|
835
|
-
lineNumber:
|
|
839
|
+
lineNumber: 59,
|
|
836
840
|
columnNumber: 36
|
|
837
841
|
}, void 0), {
|
|
838
842
|
stdin: process.stdin,
|
package/dist/daemon.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daemon.js","sources":["../src/systems/cli/apps/daemon/components/DaemonConnectionManager.tsx","../src/systems/cli/apps/daemon/components/TokenInput.tsx","../src/systems/cli/apps/daemon/guards/OauthSetup.tsx","../src/systems/cli/apps/daemon/components/AgentTabs.tsx","../src/systems/cli/apps/daemon/screens/Agents/index.tsx","../src/systems/cli/apps/daemon/screens/Onboarding/index.tsx","../src/systems/cli/apps/daemon/index.tsx"],"sourcesContent":["import { cliContainer } from '@cli/container';\nimport React, { useEffect, useRef } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport type { DaemonManager } from '@/services';\nimport type { AppDispatch } from '@/store';\nimport { RootState } from '@/store';\nimport { launchDaemon } from '@/store/slices/daemonStatusSlice';\nimport { GLOBAL_TYPES } from '@/types';\nimport { useInk } from '../../../contexts/InkContext';\nimport { clearShutdownCallback, setShutdownCallback } from '../../../services/StdinManager';\n\ninterface DaemonConnectionManagerProps {\n children: React.ReactNode;\n}\n\nexport const DaemonConnectionManager: React.FC<DaemonConnectionManagerProps> = ({ children }) => {\n const { Box, Text } = useInk();\n const dispatch = useDispatch<AppDispatch>();\n const status = useSelector((state: RootState) => state.daemonStatus.status);\n const error = useSelector((state: RootState) => state.daemonStatus.error);\n const isShuttingDown = useRef(false);\n\n useEffect(() => {\n dispatch(launchDaemon());\n\n // Register shutdown callback for Ctrl+C handling\n const handleShutdown = async () => {\n if (isShuttingDown.current) return;\n isShuttingDown.current = true;\n\n try {\n const daemonManager = cliContainer.get<DaemonManager>(GLOBAL_TYPES.DaemonManager);\n if (daemonManager.isRunning()) {\n await daemonManager.stop();\n }\n } catch {\n // Ignore errors during shutdown\n }\n // daemonManager.stop() calls process.exit() at the end\n };\n\n setShutdownCallback(handleShutdown);\n\n return () => {\n clearShutdownCallback();\n };\n }, [dispatch]);\n\n if (status === 'starting') {\n return (\n <Box flexDirection=\"column\" padding={1}>\n <Text color=\"yellow\">Connecting to Agiflow...</Text>\n </Box>\n );\n }\n\n if (status === 'error') {\n return (\n <Box flexDirection=\"column\" padding={1} borderStyle=\"round\" borderColor=\"red\">\n <Text color=\"red\" bold>\n Connection Error\n </Text>\n <Text>{error}</Text>\n <Text dimColor>Retrying in background...</Text>\n </Box>\n );\n }\n\n if (status === 'connected') {\n return <>{children}</>;\n }\n\n return null;\n};\n","import React, { useRef, useState } from 'react';\nimport { useInk } from '../../../contexts/InkContext';\n\ninterface TokenInputProps {\n onSubmit: (token: string) => void;\n onCancel?: () => void;\n}\n\nexport const TokenInput: React.FC<TokenInputProps> = ({ onSubmit, onCancel }) => {\n const { Box, Text, useInput } = useInk();\n const [value, setValue] = useState('');\n const valueRef = useRef('');\n\n useInput((input, key) => {\n // Ctrl+C clears text if there's any, otherwise allows default behavior (exit)\n if (key.ctrl && input === 'c' && valueRef.current.length > 0) {\n valueRef.current = '';\n setValue('');\n return;\n }\n\n if (key.return) {\n const currentValue = valueRef.current.trim();\n if (currentValue) {\n onSubmit(currentValue);\n }\n return;\n }\n\n if (key.escape) {\n onCancel?.();\n return;\n }\n\n if (key.backspace || key.delete) {\n const newValue = valueRef.current.slice(0, -1);\n valueRef.current = newValue;\n setValue(newValue);\n return;\n }\n\n if (input && !key.ctrl && !key.meta) {\n const newValue = valueRef.current + input;\n valueRef.current = newValue;\n setValue(newValue);\n }\n });\n\n return (\n <Box flexDirection=\"column\">\n <Text>\n <Text bold color=\"cyan\">\n Token:{' '}\n </Text>\n <Text color=\"green\">{value.length > 0 ? `${value.slice(0, 20)}...` : <Text dimColor>(paste token)</Text>}</Text>\n </Text>\n <Text dimColor>\n <Text bold>Enter</Text> to submit • <Text bold>Esc</Text> to cancel\n </Text>\n </Box>\n );\n};\n","import { cliContainer } from '@cli/container';\nimport { useMutation, useQuery, useQueryClient } from '@tanstack/react-query';\nimport React, { useEffect, useState } from 'react';\nimport { CredentialsService, DeviceCodeAuthService, type DeviceCodeResponse } from '@/services';\nimport { GLOBAL_TYPES } from '@/types';\nimport { useInk } from '../../../contexts/InkContext';\nimport { TokenInput } from '../components/TokenInput';\n\ninterface OauthSetupProps {\n children: (props: { isAuthenticated: boolean }) => React.ReactNode;\n}\n\nexport const OauthSetup: React.FC<OauthSetupProps> = ({ children }) => {\n const { Box, Text, Newline, Static, Link } = useInk();\n const queryClient = useQueryClient();\n const [deviceCode, setDeviceCode] = useState<DeviceCodeResponse | null>(null);\n const [showTokenInput, setShowTokenInput] = useState(false);\n\n // Get services from DI container\n const authService = cliContainer.get<DeviceCodeAuthService>(GLOBAL_TYPES.DeviceCodeAuthService);\n const credentialsService = cliContainer.get<CredentialsService>(GLOBAL_TYPES.CredentialsService);\n\n // Check existing authentication\n const { data: existingAuth, isLoading: isCheckingAuth } = useQuery({\n queryKey: ['auth', 'check'],\n queryFn: async () => {\n const creds = await credentialsService.load();\n if (creds && creds.apiKey && creds.expiresAt && authService.isTokenValid(creds.expiresAt)) {\n return { authenticated: true };\n }\n return { authenticated: false };\n },\n retry: false,\n });\n\n // Request device code\n const deviceCodeMutation = useMutation({\n mutationFn: async () => {\n const baseUrl = authService.getServerUrl();\n const clientId = authService.getClientId();\n\n const response = await fetch(`${baseUrl}/api/v1/oauth/device/authorize`, {\n method: 'POST',\n headers: { 'Content-Type': 'application/json' },\n body: JSON.stringify({\n client_id: clientId,\n scope: 'openid profile email',\n }),\n });\n\n if (!response.ok) {\n const errorData = await response.json();\n throw new Error(errorData.error_description || `Device authorization failed: ${response.status}`);\n }\n\n return response.json() as Promise<DeviceCodeResponse>;\n },\n onSuccess: (data) => {\n setDeviceCode(data);\n setShowTokenInput(true);\n },\n });\n\n // Verify token mutation\n const verifyTokenMutation = useMutation({\n mutationFn: async (token: string) => {\n if (!deviceCode) {\n throw new Error('Device code not available');\n }\n const apiKeyToken = await authService.exchangeTokenForApiKey(token, deviceCode.device_code);\n // Save to credentials.json\n await credentialsService.setApiKey({\n apiKey: apiKeyToken.api_key,\n organizationId: apiKeyToken.organization_id,\n expiresAt: apiKeyToken.expires_at,\n deviceId: apiKeyToken.device_id,\n });\n return { success: true };\n },\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: ['auth', 'check'] });\n },\n });\n\n // Trigger device code request when not authenticated\n useEffect(() => {\n if (existingAuth && !existingAuth.authenticated && !deviceCodeMutation.isPending && !deviceCode) {\n deviceCodeMutation.mutate();\n }\n }, [existingAuth, deviceCodeMutation, deviceCode]);\n\n // Authenticated - render children\n if (existingAuth?.authenticated) {\n return <>{children({ isAuthenticated: true })}</>;\n }\n\n // Checking authentication\n if (isCheckingAuth) {\n return (\n <Box flexDirection=\"column\" padding={1}>\n <Box marginBottom={1}>\n <Text bold color=\"cyan\">\n 🔐 Agiflow Authentication\n </Text>\n </Box>\n <Box borderStyle=\"round\" borderColor=\"cyan\" padding={1}>\n <Box flexDirection=\"column\">\n <Text>\n <Text color=\"cyan\">◉ </Text>\n <Text>Checking existing credentials...</Text>\n </Text>\n </Box>\n </Box>\n </Box>\n );\n }\n\n // Requesting device code\n if (deviceCodeMutation.isPending) {\n return (\n <Box flexDirection=\"column\" padding={1}>\n <Box marginBottom={1}>\n <Text bold color=\"cyan\">\n 🔐 Agiflow Authentication\n </Text>\n </Box>\n <Box borderStyle=\"round\" borderColor=\"cyan\" padding={1}>\n <Box flexDirection=\"column\">\n <Text>\n <Text color=\"green\">✓ </Text>\n <Text dimColor>Checked existing credentials</Text>\n </Text>\n <Text>\n <Text color=\"cyan\">◉ </Text>\n <Text>Requesting device authorization...</Text>\n </Text>\n </Box>\n </Box>\n </Box>\n );\n }\n\n // Show authentication instructions\n if (deviceCode) {\n const verificationUrl = `${deviceCode.verification_uri}?code=${encodeURIComponent(deviceCode.user_code)}`;\n\n return (\n <>\n <Static items={[1]}>\n {() => (\n <Box flexDirection=\"column\" padding={1}>\n <Box marginBottom={1}>\n <Text bold color=\"cyan\">\n 🔐 Agiflow Authentication\n </Text>\n </Box>\n\n <Box borderStyle=\"round\" borderColor=\"green\" padding={1} marginBottom={1}>\n <Box flexDirection=\"column\">\n <Text>\n <Text color=\"green\">✓ </Text>\n <Text dimColor>Checked existing credentials</Text>\n </Text>\n <Text>\n <Text color=\"green\">✓ </Text>\n <Text dimColor>Device authorization requested</Text>\n </Text>\n <Text>\n <Text color=\"cyan\">◉ </Text>\n <Text bold>Waiting for browser confirmation</Text>\n </Text>\n </Box>\n </Box>\n\n <Box borderStyle=\"double\" borderColor=\"yellow\" padding={1} marginBottom={1}>\n <Box flexDirection=\"column\">\n <Text bold color=\"yellow\">\n 📋 Authentication Steps:\n </Text>\n <Newline />\n\n <Text>\n <Text bold color=\"cyan\">\n 1.{' '}\n </Text>\n <Text>Open this URL in your browser:</Text>\n </Text>\n <Box paddingLeft={3} marginBottom={1}>\n <Link url={verificationUrl}>\n <Text color=\"blue\" bold>\n {verificationUrl}\n </Text>\n </Link>\n </Box>\n\n <Text>\n <Text bold color=\"cyan\">\n 2.{' '}\n </Text>\n <Text>Enter this verification code:</Text>\n </Text>\n <Box paddingLeft={3} marginBottom={1} borderStyle=\"single\" borderColor=\"green\" paddingX={2}>\n <Text color=\"green\" bold>\n {deviceCode.user_code}\n </Text>\n </Box>\n\n <Text>\n <Text bold color=\"cyan\">\n 3.{' '}\n </Text>\n <Text>Sign in and authorize the device</Text>\n </Text>\n <Newline />\n\n <Text>\n <Text bold color=\"cyan\">\n 4.{' '}\n </Text>\n <Text>Copy the verification token (JWT) shown after confirmation</Text>\n </Text>\n <Newline />\n\n <Text dimColor>The browser will show a long token that starts with \"eyJ...\"</Text>\n </Box>\n </Box>\n\n <Box borderStyle=\"round\" borderColor=\"gray\" padding={1} marginBottom={1}>\n <Box flexDirection=\"column\">\n <Text dimColor>⏱️ Expires in: {Math.floor(deviceCode.expires_in / 60)} minutes</Text>\n <Text dimColor>💡 Tip: The URL includes your verification code for convenience</Text>\n </Box>\n </Box>\n </Box>\n )}\n </Static>\n\n {showTokenInput && (\n <Box borderStyle=\"round\" borderColor=\"cyan\" padding={1}>\n <TokenInput\n onSubmit={(token) => verifyTokenMutation.mutate(token)}\n onCancel={() => setShowTokenInput(false)}\n />\n </Box>\n )}\n </>\n );\n }\n\n // Verifying token\n if (verifyTokenMutation.isPending) {\n return (\n <Box flexDirection=\"column\" padding={1}>\n <Box marginBottom={1}>\n <Text bold color=\"cyan\">\n 🔐 Agiflow Authentication\n </Text>\n </Box>\n <Box borderStyle=\"round\" borderColor=\"cyan\" padding={1}>\n <Box flexDirection=\"column\">\n <Text>\n <Text color=\"cyan\">◉ </Text>\n <Text>Verifying token...</Text>\n </Text>\n </Box>\n </Box>\n </Box>\n );\n }\n\n // Error state\n if (deviceCodeMutation.isError || verifyTokenMutation.isError) {\n const error = deviceCodeMutation.error || verifyTokenMutation.error;\n return (\n <Box flexDirection=\"column\" padding={1}>\n <Box marginBottom={1}>\n <Text bold color=\"red\">\n ❌ Authentication Error\n </Text>\n </Box>\n <Box borderStyle=\"round\" borderColor=\"red\" padding={1} marginBottom={1}>\n <Text color=\"red\">{error?.message || 'Unknown error occurred'}</Text>\n </Box>\n <Box borderStyle=\"single\" borderColor=\"gray\" padding={1}>\n <Box flexDirection=\"column\">\n <Text dimColor>💡 Troubleshooting:</Text>\n <Text dimColor> • Check your internet connection</Text>\n <Text dimColor> • Verify the server URL is correct</Text>\n <Text dimColor> • Ensure the token is valid and not expired</Text>\n <Text dimColor> • Try running the daemon again</Text>\n <Newline />\n <Text dimColor>⌨️ Press Ctrl+C to exit</Text>\n </Box>\n </Box>\n </Box>\n );\n }\n\n // Default loading state\n return null;\n};\n","import { useSelector } from 'react-redux';\nimport { RootState } from '@/store';\nimport { LaunchAgent } from '../../../components/LaunchAgent';\nimport { useInk } from '../../../contexts/InkContext';\n\nexport const AgentTabs = () => {\n const { Box, Text } = useInk();\n const tabs = useSelector((state: RootState) => state.agentTabs.tabs);\n const activeTabId = useSelector((state: RootState) => state.agentTabs.activeTabId);\n\n return (\n <Box marginTop={1} borderStyle=\"single\" borderColor=\"gray\">\n {tabs.map((tab, index) => {\n const fKeyLabel = `^F${index + 1}`; // Ctrl+F on macOS\n return (\n <Box key={tab.id} paddingRight={2}>\n <Text\n color={activeTabId === tab.id ? '#ffffff' : '#d1d5db'}\n bold={activeTabId === tab.id}\n dimColor={activeTabId !== tab.id}\n backgroundColor={activeTabId === tab.id ? '#10b981' : undefined}\n >\n [{fKeyLabel}] {tab.label}\n {tab.unreadCount && tab.unreadCount > 0 && tab.id !== activeTabId ? ` (${tab.unreadCount})` : ''}\n </Text>\n <LaunchAgent tab={tab} />\n </Box>\n );\n })}\n </Box>\n );\n};\n","import React from 'react';\nimport { useSelector } from 'react-redux';\nimport { RootState } from '@/store';\nimport { StdinForwarder } from '@/systems/cli/components/StdinForwarder';\nimport { AgentView } from '../../../../components/AgentView';\nimport { BoxSizeMeasure } from '../../../../components/BoxSizeMeasure';\nimport { CAPermissionGuard } from '../../../../components/CAPermissionGuard';\nimport { useInk } from '../../../../contexts/InkContext';\nimport { AgentTabs } from '../../components/AgentTabs';\n\nexport const Agents: React.FC = () => {\n const { Box } = useInk();\n const activeTabId = useSelector((state: RootState) => state.agentTabs.activeTabId);\n // F-key tab switching is handled by StdinForwarder via escape sequences\n\n return (\n <Box flexDirection=\"column\" flexGrow={1}>\n <CAPermissionGuard>\n <AgentView key={activeTabId} />\n </CAPermissionGuard>\n <BoxSizeMeasure>\n <AgentTabs />\n </BoxSizeMeasure>\n <StdinForwarder />\n </Box>\n );\n};\n","import React from 'react';\nimport { useInk } from '../../../../contexts/InkContext';\n\nexport const Onboarding: React.FC = () => {\n const { Box, Text } = useInk();\n\n return (\n <Box flexDirection=\"column\" borderStyle=\"round\" borderColor=\"green\" padding={1} flexGrow={1}>\n <Text bold color=\"green\">\n Welcome to Agent CLI Daemon!\n </Text>\n <Box marginTop={1}>\n <Text>It looks like you don't have any active agent sessions.</Text>\n </Box>\n <Box marginTop={1}>\n <Text>\n Please use the Agiflow UI Dashboard to start a{' '}\n <Text bold color=\"blue\">\n Project Plan\n </Text>\n ,{' '}\n <Text bold color=\"blue\">\n Work Unit\n </Text>\n , or{' '}\n <Text bold color=\"blue\">\n Task Chat\n </Text>{' '}\n to begin.\n </Text>\n </Box>\n <Box marginTop={1}>\n <Text dimColor>The Agiflow UI Dashboard can be accessed in your browser.</Text>\n </Box>\n </Box>\n );\n};\n","import 'reflect-metadata'; // Must be first import for InversifyJS\nimport { QueryClient, QueryClientProvider } from '@tanstack/react-query';\nimport React from 'react';\nimport { Provider, useSelector } from 'react-redux';\nimport { RootState, store } from '@/store';\nimport { InkProvider, useInk } from '../../contexts/InkContext';\nimport { DaemonConnectionManager } from './components/DaemonConnectionManager';\nimport { OauthSetup } from './guards/OauthSetup';\nimport { Agents } from './screens/Agents';\nimport { Onboarding } from './screens/Onboarding';\n\n// Create a client\nconst queryClient = new QueryClient({\n defaultOptions: {\n queries: {\n retry: false,\n refetchOnWindowFocus: false,\n },\n },\n});\n\nconst DaemonAppContent: React.FC = () => {\n const { Box } = useInk();\n\n const tabs = useSelector((state: RootState) => state.agentTabs.tabs);\n const hasAgentTabs = tabs.length > 0; // No dashboard, so any tab is an agent\n\n return (\n <OauthSetup>\n {({ isAuthenticated }) => (\n <DaemonConnectionManager>\n <Box flexGrow={1} flexDirection=\"column\">\n {isAuthenticated && !hasAgentTabs ? <Onboarding /> : <Agents />}\n </Box>\n </DaemonConnectionManager>\n )}\n </OauthSetup>\n );\n};\n\nconst DaemonApp: React.FC = () => {\n return (\n <InkProvider>\n <Provider store={store}>\n <QueryClientProvider client={queryClient}>\n <DaemonAppContent />\n </QueryClientProvider>\n </Provider>\n </InkProvider>\n );\n};\n\nexport const startDaemonApp = async () => {\n // Dynamically import Ink's render function to avoid top-level yoga-layout import\n const { render } = await import('ink');\n // Disable Ink's stdin handling - we use StdinManager instead\n const { waitUntilExit } = render(<DaemonApp />, {\n stdin: process.stdin,\n stdout: process.stdout,\n stderr: process.stderr,\n });\n return waitUntilExit();\n};\n"],"names":["DaemonConnectionManager","children","Box","Text","useInk","dispatch","useDispatch","status","useSelector","state","error","isShuttingDown","useRef","useEffect","launchDaemon","setShutdownCallback","daemonManager","cliContainer","GLOBAL_TYPES","clearShutdownCallback","jsxDEV","this","TokenInput","onSubmit","onCancel","useInput","value","setValue","useState","valueRef","input","key","currentValue","newValue","OauthSetup","Newline","Static","Link","queryClient","useQueryClient","deviceCode","setDeviceCode","showTokenInput","setShowTokenInput","authService","credentialsService","existingAuth","isCheckingAuth","useQuery","creds","deviceCodeMutation","useMutation","baseUrl","clientId","response","errorData","data","verifyTokenMutation","token","apiKeyToken","verificationUrl","Fragment","AgentTabs","tabs","activeTabId","tab","index","fKeyLabel","LaunchAgent","Agents","CAPermissionGuard","AgentView","BoxSizeMeasure","StdinForwarder","Onboarding","QueryClient","DaemonAppContent","hasAgentTabs","isAuthenticated","DaemonApp","InkProvider","Provider","store","QueryClientProvider","startDaemonApp","render","waitUntilExit"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"daemon.js","sources":["../src/systems/cli/apps/daemon/components/DaemonConnectionManager.tsx","../src/systems/cli/apps/daemon/components/TokenInput.tsx","../src/systems/cli/apps/daemon/guards/OauthSetup.tsx","../src/systems/cli/apps/daemon/components/AgentTabs.tsx","../src/systems/cli/apps/daemon/screens/Agents/index.tsx","../src/systems/cli/apps/daemon/screens/Onboarding/index.tsx","../src/systems/cli/apps/daemon/index.tsx"],"sourcesContent":["import { cliContainer } from '@cli/container';\nimport React, { useEffect, useRef } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport type { DaemonManager } from '@/services';\nimport type { AppDispatch } from '@/store';\nimport { RootState } from '@/store';\nimport { launchDaemon } from '@/store/slices/daemonStatusSlice';\nimport { GLOBAL_TYPES } from '@/types';\nimport { useInk } from '../../../contexts/InkContext';\nimport { clearShutdownCallback, setShutdownCallback } from '../../../services/StdinManager';\n\ninterface DaemonConnectionManagerProps {\n children: React.ReactNode;\n}\n\nexport const DaemonConnectionManager: React.FC<DaemonConnectionManagerProps> = ({ children }) => {\n const { Box, Text } = useInk();\n const dispatch = useDispatch<AppDispatch>();\n const status = useSelector((state: RootState) => state.daemonStatus.status);\n const error = useSelector((state: RootState) => state.daemonStatus.error);\n const isShuttingDown = useRef(false);\n\n useEffect(() => {\n dispatch(launchDaemon());\n\n // Register shutdown callback for Ctrl+C handling\n const handleShutdown = async () => {\n if (isShuttingDown.current) return;\n isShuttingDown.current = true;\n\n try {\n const daemonManager = cliContainer.get<DaemonManager>(GLOBAL_TYPES.DaemonManager);\n if (daemonManager.isRunning()) {\n await daemonManager.stop();\n }\n } catch {\n // Ignore errors during shutdown\n }\n // daemonManager.stop() calls process.exit() at the end\n };\n\n setShutdownCallback(handleShutdown);\n\n return () => {\n clearShutdownCallback();\n };\n }, [dispatch]);\n\n if (status === 'starting') {\n return (\n <Box flexDirection=\"column\" padding={1}>\n <Text color=\"yellow\">Connecting to Agiflow...</Text>\n </Box>\n );\n }\n\n if (status === 'error') {\n return (\n <Box flexDirection=\"column\" padding={1} borderStyle=\"round\" borderColor=\"red\">\n <Text color=\"red\" bold>\n Connection Error\n </Text>\n <Text>{error}</Text>\n <Text dimColor>Retrying in background...</Text>\n </Box>\n );\n }\n\n if (status === 'connected') {\n return <>{children}</>;\n }\n\n return null;\n};\n","import React, { useRef, useState } from 'react';\nimport { useInk } from '../../../contexts/InkContext';\n\ninterface TokenInputProps {\n onSubmit: (token: string) => void;\n onCancel?: () => void;\n}\n\nexport const TokenInput: React.FC<TokenInputProps> = ({ onSubmit, onCancel }) => {\n const { Box, Text, useInput } = useInk();\n const [value, setValue] = useState('');\n const valueRef = useRef('');\n\n useInput((input, key) => {\n // Ctrl+C clears text if there's any, otherwise allows default behavior (exit)\n if (key.ctrl && input === 'c' && valueRef.current.length > 0) {\n valueRef.current = '';\n setValue('');\n return;\n }\n\n if (key.return) {\n const currentValue = valueRef.current.trim();\n if (currentValue) {\n onSubmit(currentValue);\n }\n return;\n }\n\n if (key.escape) {\n onCancel?.();\n return;\n }\n\n if (key.backspace || key.delete) {\n const newValue = valueRef.current.slice(0, -1);\n valueRef.current = newValue;\n setValue(newValue);\n return;\n }\n\n if (input && !key.ctrl && !key.meta) {\n const newValue = valueRef.current + input;\n valueRef.current = newValue;\n setValue(newValue);\n }\n });\n\n return (\n <Box flexDirection=\"column\">\n <Text>\n <Text bold color=\"cyan\">\n Token:{' '}\n </Text>\n <Text color=\"green\">{value.length > 0 ? `${value.slice(0, 20)}...` : <Text dimColor>(paste token)</Text>}</Text>\n </Text>\n <Text dimColor>\n <Text bold>Enter</Text> to submit • <Text bold>Esc</Text> to cancel\n </Text>\n </Box>\n );\n};\n","import { cliContainer } from '@cli/container';\nimport { useMutation, useQuery, useQueryClient } from '@tanstack/react-query';\nimport React, { useEffect, useState } from 'react';\nimport { CredentialsService, DeviceCodeAuthService, type DeviceCodeResponse } from '@/services';\nimport { GLOBAL_TYPES } from '@/types';\nimport { useInk } from '../../../contexts/InkContext';\nimport { TokenInput } from '../components/TokenInput';\n\ninterface OauthSetupProps {\n children: (props: { isAuthenticated: boolean }) => React.ReactNode;\n}\n\nexport const OauthSetup: React.FC<OauthSetupProps> = ({ children }) => {\n const { Box, Text, Newline, Static, Link } = useInk();\n const queryClient = useQueryClient();\n const [deviceCode, setDeviceCode] = useState<DeviceCodeResponse | null>(null);\n const [showTokenInput, setShowTokenInput] = useState(false);\n\n // Get services from DI container\n const authService = cliContainer.get<DeviceCodeAuthService>(GLOBAL_TYPES.DeviceCodeAuthService);\n const credentialsService = cliContainer.get<CredentialsService>(GLOBAL_TYPES.CredentialsService);\n\n // Check existing authentication\n const { data: existingAuth, isLoading: isCheckingAuth } = useQuery({\n queryKey: ['auth', 'check'],\n queryFn: async () => {\n const creds = await credentialsService.load();\n if (creds && creds.apiKey && creds.expiresAt && authService.isTokenValid(creds.expiresAt)) {\n return { authenticated: true };\n }\n return { authenticated: false };\n },\n retry: false,\n });\n\n // Request device code\n const deviceCodeMutation = useMutation({\n mutationFn: async () => {\n const baseUrl = authService.getServerUrl();\n const clientId = authService.getClientId();\n\n const response = await fetch(`${baseUrl}/api/v1/oauth/device/authorize`, {\n method: 'POST',\n headers: { 'Content-Type': 'application/json' },\n body: JSON.stringify({\n client_id: clientId,\n scope: 'openid profile email',\n }),\n });\n\n if (!response.ok) {\n const errorData = await response.json();\n throw new Error(errorData.error_description || `Device authorization failed: ${response.status}`);\n }\n\n return response.json() as Promise<DeviceCodeResponse>;\n },\n onSuccess: (data) => {\n setDeviceCode(data);\n setShowTokenInput(true);\n },\n });\n\n // Verify token mutation\n const verifyTokenMutation = useMutation({\n mutationFn: async (token: string) => {\n if (!deviceCode) {\n throw new Error('Device code not available');\n }\n const apiKeyToken = await authService.exchangeTokenForApiKey(token, deviceCode.device_code);\n // Save to credentials.json\n await credentialsService.setApiKey({\n apiKey: apiKeyToken.api_key,\n organizationId: apiKeyToken.organization_id,\n expiresAt: apiKeyToken.expires_at,\n deviceId: apiKeyToken.device_id,\n });\n return { success: true };\n },\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: ['auth', 'check'] });\n },\n });\n\n // Trigger device code request when not authenticated\n useEffect(() => {\n if (existingAuth && !existingAuth.authenticated && !deviceCodeMutation.isPending && !deviceCode) {\n deviceCodeMutation.mutate();\n }\n }, [existingAuth, deviceCodeMutation, deviceCode]);\n\n // Authenticated - render children\n if (existingAuth?.authenticated) {\n return <>{children({ isAuthenticated: true })}</>;\n }\n\n // Checking authentication\n if (isCheckingAuth) {\n return (\n <Box flexDirection=\"column\" padding={1}>\n <Box marginBottom={1}>\n <Text bold color=\"cyan\">\n 🔐 Agiflow Authentication\n </Text>\n </Box>\n <Box borderStyle=\"round\" borderColor=\"cyan\" padding={1}>\n <Box flexDirection=\"column\">\n <Text>\n <Text color=\"cyan\">◉ </Text>\n <Text>Checking existing credentials...</Text>\n </Text>\n </Box>\n </Box>\n </Box>\n );\n }\n\n // Requesting device code\n if (deviceCodeMutation.isPending) {\n return (\n <Box flexDirection=\"column\" padding={1}>\n <Box marginBottom={1}>\n <Text bold color=\"cyan\">\n 🔐 Agiflow Authentication\n </Text>\n </Box>\n <Box borderStyle=\"round\" borderColor=\"cyan\" padding={1}>\n <Box flexDirection=\"column\">\n <Text>\n <Text color=\"green\">✓ </Text>\n <Text dimColor>Checked existing credentials</Text>\n </Text>\n <Text>\n <Text color=\"cyan\">◉ </Text>\n <Text>Requesting device authorization...</Text>\n </Text>\n </Box>\n </Box>\n </Box>\n );\n }\n\n // Show authentication instructions\n if (deviceCode) {\n const verificationUrl = `${deviceCode.verification_uri}?code=${encodeURIComponent(deviceCode.user_code)}`;\n\n return (\n <>\n <Static items={[1]}>\n {() => (\n <Box flexDirection=\"column\" padding={1}>\n <Box marginBottom={1}>\n <Text bold color=\"cyan\">\n 🔐 Agiflow Authentication\n </Text>\n </Box>\n\n <Box borderStyle=\"round\" borderColor=\"green\" padding={1} marginBottom={1}>\n <Box flexDirection=\"column\">\n <Text>\n <Text color=\"green\">✓ </Text>\n <Text dimColor>Checked existing credentials</Text>\n </Text>\n <Text>\n <Text color=\"green\">✓ </Text>\n <Text dimColor>Device authorization requested</Text>\n </Text>\n <Text>\n <Text color=\"cyan\">◉ </Text>\n <Text bold>Waiting for browser confirmation</Text>\n </Text>\n </Box>\n </Box>\n\n <Box borderStyle=\"double\" borderColor=\"yellow\" padding={1} marginBottom={1}>\n <Box flexDirection=\"column\">\n <Text bold color=\"yellow\">\n 📋 Authentication Steps:\n </Text>\n <Newline />\n\n <Text>\n <Text bold color=\"cyan\">\n 1.{' '}\n </Text>\n <Text>Open this URL in your browser:</Text>\n </Text>\n <Box paddingLeft={3} marginBottom={1}>\n <Link url={verificationUrl}>\n <Text color=\"blue\" bold>\n {verificationUrl}\n </Text>\n </Link>\n </Box>\n\n <Text>\n <Text bold color=\"cyan\">\n 2.{' '}\n </Text>\n <Text>Enter this verification code:</Text>\n </Text>\n <Box paddingLeft={3} marginBottom={1} borderStyle=\"single\" borderColor=\"green\" paddingX={2}>\n <Text color=\"green\" bold>\n {deviceCode.user_code}\n </Text>\n </Box>\n\n <Text>\n <Text bold color=\"cyan\">\n 3.{' '}\n </Text>\n <Text>Sign in and authorize the device</Text>\n </Text>\n <Newline />\n\n <Text>\n <Text bold color=\"cyan\">\n 4.{' '}\n </Text>\n <Text>Copy the verification token (JWT) shown after confirmation</Text>\n </Text>\n <Newline />\n\n <Text dimColor>The browser will show a long token that starts with \"eyJ...\"</Text>\n </Box>\n </Box>\n\n <Box borderStyle=\"round\" borderColor=\"gray\" padding={1} marginBottom={1}>\n <Box flexDirection=\"column\">\n <Text dimColor>⏱️ Expires in: {Math.floor(deviceCode.expires_in / 60)} minutes</Text>\n <Text dimColor>💡 Tip: The URL includes your verification code for convenience</Text>\n </Box>\n </Box>\n </Box>\n )}\n </Static>\n\n {showTokenInput && (\n <Box borderStyle=\"round\" borderColor=\"cyan\" padding={1}>\n <TokenInput\n onSubmit={(token) => verifyTokenMutation.mutate(token)}\n onCancel={() => setShowTokenInput(false)}\n />\n </Box>\n )}\n </>\n );\n }\n\n // Verifying token\n if (verifyTokenMutation.isPending) {\n return (\n <Box flexDirection=\"column\" padding={1}>\n <Box marginBottom={1}>\n <Text bold color=\"cyan\">\n 🔐 Agiflow Authentication\n </Text>\n </Box>\n <Box borderStyle=\"round\" borderColor=\"cyan\" padding={1}>\n <Box flexDirection=\"column\">\n <Text>\n <Text color=\"cyan\">◉ </Text>\n <Text>Verifying token...</Text>\n </Text>\n </Box>\n </Box>\n </Box>\n );\n }\n\n // Error state\n if (deviceCodeMutation.isError || verifyTokenMutation.isError) {\n const error = deviceCodeMutation.error || verifyTokenMutation.error;\n return (\n <Box flexDirection=\"column\" padding={1}>\n <Box marginBottom={1}>\n <Text bold color=\"red\">\n ❌ Authentication Error\n </Text>\n </Box>\n <Box borderStyle=\"round\" borderColor=\"red\" padding={1} marginBottom={1}>\n <Text color=\"red\">{error?.message || 'Unknown error occurred'}</Text>\n </Box>\n <Box borderStyle=\"single\" borderColor=\"gray\" padding={1}>\n <Box flexDirection=\"column\">\n <Text dimColor>💡 Troubleshooting:</Text>\n <Text dimColor> • Check your internet connection</Text>\n <Text dimColor> • Verify the server URL is correct</Text>\n <Text dimColor> • Ensure the token is valid and not expired</Text>\n <Text dimColor> • Try running the daemon again</Text>\n <Newline />\n <Text dimColor>⌨️ Press Ctrl+C to exit</Text>\n </Box>\n </Box>\n </Box>\n );\n }\n\n // Default loading state\n return null;\n};\n","import { useSelector } from 'react-redux';\nimport { RootState } from '@/store';\nimport { LaunchAgent } from '../../../components/LaunchAgent';\nimport { useInk } from '../../../contexts/InkContext';\n\nexport const AgentTabs = () => {\n const { Box, Text } = useInk();\n const tabs = useSelector((state: RootState) => state.agentTabs.tabs);\n const activeTabId = useSelector((state: RootState) => state.agentTabs.activeTabId);\n\n return (\n <Box marginTop={1} borderStyle=\"single\" borderColor=\"gray\">\n {tabs.map((tab, index) => {\n const fKeyLabel = `^F${index + 1}`; // Ctrl+F on macOS\n return (\n <Box key={tab.id} paddingRight={2}>\n <Text\n color={activeTabId === tab.id ? '#ffffff' : '#d1d5db'}\n bold={activeTabId === tab.id}\n dimColor={activeTabId !== tab.id}\n backgroundColor={activeTabId === tab.id ? '#10b981' : undefined}\n >\n [{fKeyLabel}] {tab.label}\n {tab.unreadCount && tab.unreadCount > 0 && tab.id !== activeTabId ? ` (${tab.unreadCount})` : ''}\n </Text>\n <LaunchAgent tab={tab} />\n </Box>\n );\n })}\n </Box>\n );\n};\n","import React from 'react';\nimport { useSelector } from 'react-redux';\nimport { RootState } from '@/store';\nimport { StdinForwarder } from '@/systems/cli/components/StdinForwarder';\nimport { AgentView } from '../../../../components/AgentView';\nimport { BoxSizeMeasure } from '../../../../components/BoxSizeMeasure';\nimport { CAPermissionGuard } from '../../../../components/CAPermissionGuard';\nimport { useInk } from '../../../../contexts/InkContext';\nimport { AgentTabs } from '../../components/AgentTabs';\n\nexport const Agents: React.FC = () => {\n const { Box } = useInk();\n const activeTabId = useSelector((state: RootState) => state.agentTabs.activeTabId);\n // F-key tab switching is handled by StdinForwarder via escape sequences\n\n return (\n <Box flexDirection=\"column\" flexGrow={1}>\n <CAPermissionGuard>\n <AgentView key={activeTabId} />\n </CAPermissionGuard>\n <BoxSizeMeasure>\n <AgentTabs />\n </BoxSizeMeasure>\n <StdinForwarder />\n </Box>\n );\n};\n","import React from 'react';\nimport { useInk } from '../../../../contexts/InkContext';\n\nexport const Onboarding: React.FC = () => {\n const { Box, Text } = useInk();\n\n return (\n <Box flexDirection=\"column\" borderStyle=\"round\" borderColor=\"green\" padding={1} flexGrow={1}>\n <Text bold color=\"green\">\n Welcome to Agent CLI Daemon!\n </Text>\n <Box marginTop={1}>\n <Text>It looks like you don't have any active agent sessions.</Text>\n </Box>\n <Box marginTop={1}>\n <Text>\n Please use the Agiflow UI Dashboard to start a{' '}\n <Text bold color=\"blue\">\n Project Plan\n </Text>\n ,{' '}\n <Text bold color=\"blue\">\n Work Unit\n </Text>\n , or{' '}\n <Text bold color=\"blue\">\n Task Chat\n </Text>{' '}\n to begin.\n </Text>\n </Box>\n <Box marginTop={1}>\n <Text dimColor>The Agiflow UI Dashboard can be accessed in your browser.</Text>\n </Box>\n </Box>\n );\n};\n","import 'reflect-metadata'; // Must be first import for InversifyJS\nimport { QueryClient, QueryClientProvider } from '@tanstack/react-query';\nimport React from 'react';\nimport { Provider, useSelector } from 'react-redux';\nimport { RootState, store } from '@/store';\nimport { InkProvider, useInk } from '../../contexts/InkContext';\nimport { DaemonConnectionManager } from './components/DaemonConnectionManager';\nimport { OauthSetup } from './guards/OauthSetup';\nimport { Agents } from './screens/Agents';\nimport { Onboarding } from './screens/Onboarding';\n\n// Create a client with memory management\nconst queryClient = new QueryClient({\n defaultOptions: {\n queries: {\n retry: false,\n refetchOnWindowFocus: false,\n gcTime: 5 * 60 * 1000, // Garbage collect unused queries after 5 minutes\n staleTime: 30 * 1000, // Consider data stale after 30 seconds\n },\n },\n});\n\nconst DaemonAppContent: React.FC = () => {\n const { Box } = useInk();\n\n const tabs = useSelector((state: RootState) => state.agentTabs.tabs);\n const hasAgentTabs = tabs.length > 0; // No dashboard, so any tab is an agent\n\n return (\n <OauthSetup>\n {({ isAuthenticated }) => (\n <DaemonConnectionManager>\n <Box flexGrow={1} flexDirection=\"column\">\n {isAuthenticated && !hasAgentTabs ? <Onboarding /> : <Agents />}\n </Box>\n </DaemonConnectionManager>\n )}\n </OauthSetup>\n );\n};\n\nconst DaemonApp: React.FC = () => {\n return (\n <InkProvider>\n <Provider store={store}>\n <QueryClientProvider client={queryClient}>\n <DaemonAppContent />\n </QueryClientProvider>\n </Provider>\n </InkProvider>\n );\n};\n\nexport const startDaemonApp = async () => {\n // Dynamically import Ink's render function to avoid top-level yoga-layout import\n const { render } = await import('ink');\n // Disable Ink's stdin handling - we use StdinManager instead\n const { waitUntilExit } = render(<DaemonApp />, {\n stdin: process.stdin,\n stdout: process.stdout,\n stderr: process.stderr,\n });\n return waitUntilExit();\n};\n"],"names":["DaemonConnectionManager","children","Box","Text","useInk","dispatch","useDispatch","status","useSelector","state","error","isShuttingDown","useRef","useEffect","launchDaemon","setShutdownCallback","daemonManager","cliContainer","GLOBAL_TYPES","clearShutdownCallback","jsxDEV","this","TokenInput","onSubmit","onCancel","useInput","value","setValue","useState","valueRef","input","key","currentValue","newValue","OauthSetup","Newline","Static","Link","queryClient","useQueryClient","deviceCode","setDeviceCode","showTokenInput","setShowTokenInput","authService","credentialsService","existingAuth","isCheckingAuth","useQuery","creds","deviceCodeMutation","useMutation","baseUrl","clientId","response","errorData","data","verifyTokenMutation","token","apiKeyToken","verificationUrl","Fragment","AgentTabs","tabs","activeTabId","tab","index","fKeyLabel","LaunchAgent","Agents","CAPermissionGuard","AgentView","BoxSizeMeasure","StdinForwarder","Onboarding","QueryClient","DaemonAppContent","hasAgentTabs","isAuthenticated","DaemonApp","InkProvider","Provider","store","QueryClientProvider","startDaemonApp","render","waitUntilExit"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { aj as s, ai as t, aa as o, af as c, ae as S, a1 as m, a5 as r, ah as n, a9 as h, a7 as g, am as l, a8 as p, ad as M, ak as P, ag as T, a6 as u, a2 as i, ab as C, ac as v, a4 as I, a3 as d, al as x, an as A, ao as R, aq as f, ap as q, ar as V } from "./index-luh8DEZU.mjs";
|
|
2
2
|
export {
|
|
3
3
|
s as AgentMessageCreateSchema,
|
|
4
4
|
t as AgentMessageTypeSchema,
|
|
@@ -6,8 +6,8 @@ export {
|
|
|
6
6
|
c as ErrorMessagePartSchema,
|
|
7
7
|
S as FileMessagePartSchema,
|
|
8
8
|
m as JSONValueSchema,
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
r as LanguageModelV1SourceSchema,
|
|
10
|
+
n as MessagePartSchema,
|
|
11
11
|
h as PlaceholderComponentSchema,
|
|
12
12
|
g as ReasoningMessagePartSchema,
|
|
13
13
|
l as RequestApprovalSchema,
|
|
@@ -28,4 +28,4 @@ export {
|
|
|
28
28
|
q as createTextPart,
|
|
29
29
|
V as createToolInvocationInput
|
|
30
30
|
};
|
|
31
|
-
//# sourceMappingURL=index-
|
|
31
|
+
//# sourceMappingURL=index-C5IMvcG5.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-C5IMvcG5.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { A as t, a, b as n, c as S, d as m, e as o, f as E, g as c, h as A, i as g, j as h, k as v, l as u, m as i, n as r, o as R, p, q as D, r as T, s as M, t as q, u as O, v as d, w as k, x as N, y as _, z as P, B as I, C as l, D as U, E as C, F as G, G as L, H as Y, I as f, J as B, K as V, L as x, M as y, N as z, O as b, P as j, Q as w, R as F, S as H, T as J, U as K, V as Q, W, X, Y as Z, Z as $, _ as ee, $ as se, a0 as te } from "./index-luh8DEZU.mjs";
|
|
2
|
+
export {
|
|
3
|
+
t as AGENT_EVENT_TYPES,
|
|
4
|
+
a as AGENT_STATUS,
|
|
5
|
+
n as AGENT_TYPES,
|
|
6
|
+
S as AgentConfigSchema,
|
|
7
|
+
m as AgentSessionDirectControlRequestEventSchema,
|
|
8
|
+
o as AgentSessionErrorAckEventSchema,
|
|
9
|
+
E as AgentSessionErrorRequestEventSchema,
|
|
10
|
+
c as AgentSessionErrorResponseEventSchema,
|
|
11
|
+
A as AgentSessionIdlePromptRequestEventSchema,
|
|
12
|
+
g as AgentSessionMessageDeletedAckEventSchema,
|
|
13
|
+
h as AgentSessionMessageDeletedEventSchema,
|
|
14
|
+
v as AgentSessionMessageInputAckEventSchema,
|
|
15
|
+
u as AgentSessionMessageInputRequestEventSchema,
|
|
16
|
+
i as AgentSessionMessageInputResponseEventSchema,
|
|
17
|
+
r as AgentSessionMessageOutputAckEventSchema,
|
|
18
|
+
R as AgentSessionMessageOutputEndedEventSchema,
|
|
19
|
+
p as AgentSessionMessageOutputPermissionRequestedEventSchema,
|
|
20
|
+
D as AgentSessionMessageOutputRequestEventSchema,
|
|
21
|
+
T as AgentSessionMessageOutputResponseEventSchema,
|
|
22
|
+
M as AgentSessionMessageOutputStartedEventSchema,
|
|
23
|
+
q as AgentSessionMessageStdinRequestEventSchema,
|
|
24
|
+
O as AgentSessionMessageStdoutResponseEventSchema,
|
|
25
|
+
d as AgentSessionResizeRequestEventSchema,
|
|
26
|
+
k as AgentSessionStatusAckEventSchema,
|
|
27
|
+
N as AgentSessionStatusRequestEventSchema,
|
|
28
|
+
_ as AgentSessionStatusResponseEventSchema,
|
|
29
|
+
P as AgentSessionStopAgentRequestEventSchema,
|
|
30
|
+
I as AgentStatusSchema,
|
|
31
|
+
l as AgentTypeSchema,
|
|
32
|
+
U as BaseAgentSessionEventSchema,
|
|
33
|
+
C as BaseDaemonEventSchema,
|
|
34
|
+
G as COMMANDS,
|
|
35
|
+
L as DAEMON_EVENT_TYPES,
|
|
36
|
+
Y as DAEMON_STATUS,
|
|
37
|
+
f as DaemonErrorRequestEventSchema,
|
|
38
|
+
B as DaemonErrorResponseEventSchema,
|
|
39
|
+
V as DaemonListAgentSessionsAckEventSchema,
|
|
40
|
+
x as DaemonListAgentSessionsRequestEventSchema,
|
|
41
|
+
y as DaemonListAgentSessionsResponseEventSchema,
|
|
42
|
+
z as DaemonStartAgentAckEventSchema,
|
|
43
|
+
b as DaemonStartAgentRequestEventSchema,
|
|
44
|
+
j as DaemonStartAgentResponseEventSchema,
|
|
45
|
+
w as DaemonStatusRequestEventSchema,
|
|
46
|
+
F as DaemonStatusResponseEventSchema,
|
|
47
|
+
H as DaemonStatusSchema,
|
|
48
|
+
J as DaemonStopAgentAckEventSchema,
|
|
49
|
+
K as DaemonStopAgentRequestEventSchema,
|
|
50
|
+
Q as DaemonStopAgentResponseEventSchema,
|
|
51
|
+
W as DaemonTerminateAckEventSchema,
|
|
52
|
+
X as DaemonTerminateRequestEventSchema,
|
|
53
|
+
Z as DaemonTerminateResponseEventSchema,
|
|
54
|
+
$ as EventTargetSchema,
|
|
55
|
+
ee as OUTPUT_STREAMS,
|
|
56
|
+
se as OutputStreamSchema,
|
|
57
|
+
te as TraceIdSchema
|
|
58
|
+
};
|
|
59
|
+
//# sourceMappingURL=index-OxXz4OF7.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-OxXz4OF7.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|