@xortex/xcode 3.1.0 → 3.1.1
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/bin/xcode +1 -1
- package/entrypoints/cli.tsx +1 -1
- package/macro.ts +1 -1
- package/package.json +54 -1
- package/INSTALLATION.md +0 -285
- package/QUICKSTART.md +0 -151
- package/SYSTEM_PROMPT.md +0 -583
- package/SYSTEM_PROMPT_EXTRACTED.md +0 -1
- package/Untitled +0 -1
- package/bun.lock +0 -645
- package/costHook.ts +0 -22
- package/dialogLaunchers.tsx +0 -133
- package/extract_prompt.ts +0 -304
- package/inspect.js +0 -7
- package/install.sh +0 -221
- package/moreright/useMoreRight.tsx +0 -26
- package/native-ts/color-diff/index.ts +0 -999
- package/native-ts/file-index/index.ts +0 -370
- package/native-ts/yoga-layout/enums.ts +0 -134
- package/native-ts/yoga-layout/index.ts +0 -2578
- package/outputStyles/loadOutputStylesDir.ts +0 -98
- package/patch-box.js +0 -54
- package/patch-compact.js +0 -13
- package/patch-condensed-center.js +0 -13
- package/patch-condensed-row.js +0 -13
- package/patch-condensed.js +0 -13
- package/patch-final.js +0 -58
- package/patch-input-body.js +0 -46
- package/patch-input-body2.js +0 -35
- package/patch-input-style.js +0 -13
- package/patch-input-width.js +0 -13
- package/patch-layout.js +0 -87
- package/patch-logo-row.js +0 -12
- package/patch-width.js +0 -13
- package/patch-width2.js +0 -13
- package/patch2.js +0 -74
- package/patch3.js +0 -13
- package/plugins/builtinPlugins.ts +0 -159
- package/plugins/bundled/index.ts +0 -23
- package/projectOnboardingState.ts +0 -83
- package/public/claude-files.png +0 -0
- package/public/leak-tweet.png +0 -0
- package/replLauncher.tsx +0 -27
- package/server/createDirectConnectSession.ts +0 -88
- package/server/directConnectManager.ts +0 -213
- package/server/types.ts +0 -57
- package/stub_types.sh +0 -13
- package/vim/motions.ts +0 -82
- package/vim/operators.ts +0 -556
- package/vim/textObjects.ts +0 -186
- package/vim/transitions.ts +0 -490
- package/vim/types.ts +0 -199
package/install.sh
DELETED
|
@@ -1,221 +0,0 @@
|
|
|
1
|
-
#!/bin/bash
|
|
2
|
-
#
|
|
3
|
-
# XCode Installation Script
|
|
4
|
-
#
|
|
5
|
-
# Install with:
|
|
6
|
-
# curl -fsSL https://raw.githubusercontent.com/XortexAI/XCode/main/install.sh | bash
|
|
7
|
-
#
|
|
8
|
-
# Or with wget:
|
|
9
|
-
# wget -qO- https://raw.githubusercontent.com/XortexAI/XCode/main/install.sh | bash
|
|
10
|
-
#
|
|
11
|
-
|
|
12
|
-
set -e
|
|
13
|
-
|
|
14
|
-
# Colors for output
|
|
15
|
-
RED='\033[0;31m'
|
|
16
|
-
GREEN='\033[0;32m'
|
|
17
|
-
YELLOW='\033[1;33m'
|
|
18
|
-
BLUE='\033[0;34m'
|
|
19
|
-
NC='\033[0m' # No Color
|
|
20
|
-
|
|
21
|
-
# Configuration
|
|
22
|
-
REPO_URL="https://github.com/XortexAI/XCode"
|
|
23
|
-
INSTALL_DIR="$HOME/.xcode"
|
|
24
|
-
BIN_DIR="$HOME/.local/bin"
|
|
25
|
-
|
|
26
|
-
# Detect OS and architecture
|
|
27
|
-
OS=$(uname -s)
|
|
28
|
-
ARCH=$(uname -m)
|
|
29
|
-
|
|
30
|
-
echo -e "${BLUE}🚀 Installing XCode...${NC}"
|
|
31
|
-
echo ""
|
|
32
|
-
|
|
33
|
-
# Check if required dependencies are installed
|
|
34
|
-
check_dependencies() {
|
|
35
|
-
local missing_deps=()
|
|
36
|
-
|
|
37
|
-
# Check for git
|
|
38
|
-
if ! command -v git &> /dev/null; then
|
|
39
|
-
missing_deps+=("git")
|
|
40
|
-
fi
|
|
41
|
-
|
|
42
|
-
# Check for either Bun or Node.js
|
|
43
|
-
if ! command -v bun &> /dev/null && ! command -v node &> /dev/null; then
|
|
44
|
-
missing_deps+=("bun or node")
|
|
45
|
-
fi
|
|
46
|
-
|
|
47
|
-
if [ ${#missing_deps[@]} -ne 0 ]; then
|
|
48
|
-
echo -e "${RED}❌ Missing required dependencies:${NC}"
|
|
49
|
-
for dep in "${missing_deps[@]}"; do
|
|
50
|
-
echo " - $dep"
|
|
51
|
-
done
|
|
52
|
-
echo ""
|
|
53
|
-
echo "Please install the missing dependencies and try again."
|
|
54
|
-
echo ""
|
|
55
|
-
echo "To install Bun (recommended):"
|
|
56
|
-
echo " curl -fsSL https://bun.sh/install | bash"
|
|
57
|
-
echo ""
|
|
58
|
-
echo "To install Node.js:"
|
|
59
|
-
echo " Visit https://nodejs.org/ or use your package manager"
|
|
60
|
-
exit 1
|
|
61
|
-
fi
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
# Create necessary directories
|
|
65
|
-
setup_directories() {
|
|
66
|
-
echo -e "${BLUE}📁 Creating directories...${NC}"
|
|
67
|
-
mkdir -p "$INSTALL_DIR"
|
|
68
|
-
mkdir -p "$BIN_DIR"
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
# Clone or update the repository
|
|
72
|
-
install_xcode() {
|
|
73
|
-
if [ -d "$INSTALL_DIR/.git" ]; then
|
|
74
|
-
echo -e "${BLUE}🔄 Updating existing installation...${NC}"
|
|
75
|
-
cd "$INSTALL_DIR"
|
|
76
|
-
git pull origin main
|
|
77
|
-
else
|
|
78
|
-
echo -e "${BLUE}📦 Cloning XCode repository...${NC}"
|
|
79
|
-
rm -rf "$INSTALL_DIR"
|
|
80
|
-
git clone --depth=1 "$REPO_URL" "$INSTALL_DIR"
|
|
81
|
-
cd "$INSTALL_DIR"
|
|
82
|
-
fi
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
# Install dependencies
|
|
86
|
-
install_dependencies() {
|
|
87
|
-
echo -e "${BLUE}📥 Installing dependencies...${NC}"
|
|
88
|
-
|
|
89
|
-
if command -v bun &> /dev/null; then
|
|
90
|
-
echo "Using Bun..."
|
|
91
|
-
bun install
|
|
92
|
-
elif command -v npm &> /dev/null; then
|
|
93
|
-
echo "Using npm..."
|
|
94
|
-
npm install
|
|
95
|
-
fi
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
# Create the launcher script
|
|
99
|
-
create_launcher() {
|
|
100
|
-
echo -e "${BLUE}🎯 Creating launcher...${NC}"
|
|
101
|
-
|
|
102
|
-
cat > "$BIN_DIR/xcode" << 'EOF'
|
|
103
|
-
#!/bin/bash
|
|
104
|
-
# XCode Launcher
|
|
105
|
-
|
|
106
|
-
INSTALL_DIR="$HOME/.xcode"
|
|
107
|
-
|
|
108
|
-
# Check if installation exists
|
|
109
|
-
if [ ! -d "$INSTALL_DIR" ]; then
|
|
110
|
-
echo "❌ XCode not found. Please install first:"
|
|
111
|
-
echo " curl -fsSL https://raw.githubusercontent.com/XortexAI/XCode/main/install.sh | bash"
|
|
112
|
-
exit 1
|
|
113
|
-
fi
|
|
114
|
-
|
|
115
|
-
cd "$INSTALL_DIR"
|
|
116
|
-
|
|
117
|
-
# Use Bun if available, otherwise fall back to npm/npx
|
|
118
|
-
if command -v bun &> /dev/null; then
|
|
119
|
-
exec bun run ./entrypoints/cli.tsx "$@"
|
|
120
|
-
elif command -v npx &> /dev/null; then
|
|
121
|
-
exec npx tsx ./entrypoints/cli.tsx "$@"
|
|
122
|
-
else
|
|
123
|
-
echo "❌ Neither Bun nor npx is available. Please install Bun:"
|
|
124
|
-
echo " curl -fsSL https://bun.sh/install | bash"
|
|
125
|
-
exit 1
|
|
126
|
-
fi
|
|
127
|
-
EOF
|
|
128
|
-
|
|
129
|
-
chmod +x "$BIN_DIR/xcode"
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
# Add to PATH if needed
|
|
133
|
-
update_path() {
|
|
134
|
-
local shell_rc=""
|
|
135
|
-
local current_shell=$(basename "$SHELL")
|
|
136
|
-
|
|
137
|
-
case "$current_shell" in
|
|
138
|
-
bash)
|
|
139
|
-
shell_rc="$HOME/.bashrc"
|
|
140
|
-
;;
|
|
141
|
-
zsh)
|
|
142
|
-
shell_rc="$HOME/.zshrc"
|
|
143
|
-
;;
|
|
144
|
-
fish)
|
|
145
|
-
shell_rc="$HOME/.config/fish/config.fish"
|
|
146
|
-
;;
|
|
147
|
-
*)
|
|
148
|
-
shell_rc="$HOME/.profile"
|
|
149
|
-
;;
|
|
150
|
-
esac
|
|
151
|
-
|
|
152
|
-
# Check if BIN_DIR is already in PATH
|
|
153
|
-
if [[ ":$PATH:" != *":$BIN_DIR:"* ]]; then
|
|
154
|
-
echo -e "${BLUE}🔧 Adding $BIN_DIR to PATH in $shell_rc${NC}"
|
|
155
|
-
echo "export PATH=\"$BIN_DIR:\$PATH\"" >> "$shell_rc"
|
|
156
|
-
echo ""
|
|
157
|
-
echo -e "${YELLOW}⚠️ Please run: source $shell_rc${NC}"
|
|
158
|
-
echo " Or restart your terminal to use the 'xcode' command"
|
|
159
|
-
fi
|
|
160
|
-
}
|
|
161
|
-
|
|
162
|
-
# Setup XMem configuration
|
|
163
|
-
setup_xmem() {
|
|
164
|
-
echo ""
|
|
165
|
-
echo -e "${BLUE}🧠 XMem Memory Configuration${NC}"
|
|
166
|
-
echo "XCode uses XMem for long-term memory storage."
|
|
167
|
-
echo ""
|
|
168
|
-
|
|
169
|
-
# Check if XMem is already configured
|
|
170
|
-
if [ -z "$XMEM_API_URL" ]; then
|
|
171
|
-
echo -e "${YELLOW}⚠️ XMEM_API_URL not set${NC}"
|
|
172
|
-
echo " Using default: http://localhost:8000"
|
|
173
|
-
echo " Set it with: export XMEM_API_URL=http://your-xmem-server:8000"
|
|
174
|
-
fi
|
|
175
|
-
|
|
176
|
-
echo ""
|
|
177
|
-
}
|
|
178
|
-
|
|
179
|
-
# Print success message
|
|
180
|
-
print_success() {
|
|
181
|
-
echo ""
|
|
182
|
-
echo -e "${GREEN}✅ XCode installed successfully!${NC}"
|
|
183
|
-
echo ""
|
|
184
|
-
echo -e "${BLUE}🎉 Usage:${NC}"
|
|
185
|
-
echo " xcode # Start interactive session"
|
|
186
|
-
echo " xcode --model gemini-2.5-pro # Use Gemini 2.5 Pro"
|
|
187
|
-
echo " xcode --model kimi-k2.5 # Use Kimi K2.5"
|
|
188
|
-
echo " xcode --model deepseek-v3.2 # Use DeepSeek V3.2"
|
|
189
|
-
echo ""
|
|
190
|
-
echo -e "${BLUE}🔑 API Keys (set these environment variables):${NC}"
|
|
191
|
-
echo " OPENROUTER_API_KEY # For Gemini, Kimi, DeepSeek via OpenRouter"
|
|
192
|
-
echo " ANTHROPIC_API_KEY # For Claude models"
|
|
193
|
-
echo " GEMINI_API_KEY # For Google Gemini directly"
|
|
194
|
-
echo " XMEM_API_URL # XMem server URL (default: http://localhost:8000)"
|
|
195
|
-
echo ""
|
|
196
|
-
echo -e "${BLUE}📚 Documentation:${NC}"
|
|
197
|
-
echo " https://github.com/XortexAI/XCode#readme"
|
|
198
|
-
echo ""
|
|
199
|
-
echo -e "${GREEN}Happy coding! 🚀${NC}"
|
|
200
|
-
}
|
|
201
|
-
|
|
202
|
-
# Main installation flow
|
|
203
|
-
main() {
|
|
204
|
-
echo -e "${BLUE}╔════════════════════════════════════╗${NC}"
|
|
205
|
-
echo -e "${BLUE}║ XCode Installer v3.0.0 ║${NC}"
|
|
206
|
-
echo -e "${BLUE}║ AI Coding with XMem Memory ║${NC}"
|
|
207
|
-
echo -e "${BLUE}╚════════════════════════════════════╝${NC}"
|
|
208
|
-
echo ""
|
|
209
|
-
|
|
210
|
-
check_dependencies
|
|
211
|
-
setup_directories
|
|
212
|
-
install_xcode
|
|
213
|
-
install_dependencies
|
|
214
|
-
create_launcher
|
|
215
|
-
update_path
|
|
216
|
-
setup_xmem
|
|
217
|
-
print_success
|
|
218
|
-
}
|
|
219
|
-
|
|
220
|
-
# Run main function
|
|
221
|
-
main "$@"
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
// Stub for external builds — the real hook is internal only.
|
|
2
|
-
//
|
|
3
|
-
// Self-contained: no relative imports. Typecheck sees this file at
|
|
4
|
-
// scripts/external-stubs/src/moreright/ before overlay, where ../types/
|
|
5
|
-
// would resolve to scripts/external-stubs/src/types/ (doesn't exist).
|
|
6
|
-
|
|
7
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
8
|
-
type M = any;
|
|
9
|
-
export function useMoreRight(_args: {
|
|
10
|
-
enabled: boolean;
|
|
11
|
-
setMessages: (action: M[] | ((prev: M[]) => M[])) => void;
|
|
12
|
-
inputValue: string;
|
|
13
|
-
setInputValue: (s: string) => void;
|
|
14
|
-
setToolJSX: (args: M) => void;
|
|
15
|
-
}): {
|
|
16
|
-
onBeforeQuery: (input: string, all: M[], n: number) => Promise<boolean>;
|
|
17
|
-
onTurnComplete: (all: M[], aborted: boolean) => Promise<void>;
|
|
18
|
-
render: () => null;
|
|
19
|
-
} {
|
|
20
|
-
return {
|
|
21
|
-
onBeforeQuery: async () => true,
|
|
22
|
-
onTurnComplete: async () => {},
|
|
23
|
-
render: () => null
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJNIiwidXNlTW9yZVJpZ2h0IiwiX2FyZ3MiLCJlbmFibGVkIiwic2V0TWVzc2FnZXMiLCJhY3Rpb24iLCJwcmV2IiwiaW5wdXRWYWx1ZSIsInNldElucHV0VmFsdWUiLCJzIiwic2V0VG9vbEpTWCIsImFyZ3MiLCJvbkJlZm9yZVF1ZXJ5IiwiaW5wdXQiLCJhbGwiLCJuIiwiUHJvbWlzZSIsIm9uVHVybkNvbXBsZXRlIiwiYWJvcnRlZCIsInJlbmRlciJdLCJzb3VyY2VzIjpbInVzZU1vcmVSaWdodC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU3R1YiBmb3IgZXh0ZXJuYWwgYnVpbGRzIOKAlCB0aGUgcmVhbCBob29rIGlzIGludGVybmFsIG9ubHkuXG4vL1xuLy8gU2VsZi1jb250YWluZWQ6IG5vIHJlbGF0aXZlIGltcG9ydHMuIFR5cGVjaGVjayBzZWVzIHRoaXMgZmlsZSBhdFxuLy8gc2NyaXB0cy9leHRlcm5hbC1zdHVicy9zcmMvbW9yZXJpZ2h0LyBiZWZvcmUgb3ZlcmxheSwgd2hlcmUgLi4vdHlwZXMvXG4vLyB3b3VsZCByZXNvbHZlIHRvIHNjcmlwdHMvZXh0ZXJuYWwtc3R1YnMvc3JjL3R5cGVzLyAoZG9lc24ndCBleGlzdCkuXG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG50eXBlIE0gPSBhbnlcblxuZXhwb3J0IGZ1bmN0aW9uIHVzZU1vcmVSaWdodChfYXJnczoge1xuICBlbmFibGVkOiBib29sZWFuXG4gIHNldE1lc3NhZ2VzOiAoYWN0aW9uOiBNW10gfCAoKHByZXY6IE1bXSkgPT4gTVtdKSkgPT4gdm9pZFxuICBpbnB1dFZhbHVlOiBzdHJpbmdcbiAgc2V0SW5wdXRWYWx1ZTogKHM6IHN0cmluZykgPT4gdm9pZFxuICBzZXRUb29sSlNYOiAoYXJnczogTSkgPT4gdm9pZFxufSk6IHtcbiAgb25CZWZvcmVRdWVyeTogKGlucHV0OiBzdHJpbmcsIGFsbDogTVtdLCBuOiBudW1iZXIpID0+IFByb21pc2U8Ym9vbGVhbj5cbiAgb25UdXJuQ29tcGxldGU6IChhbGw6IE1bXSwgYWJvcnRlZDogYm9vbGVhbikgPT4gUHJvbWlzZTx2b2lkPlxuICByZW5kZXI6ICgpID0+IG51bGxcbn0ge1xuICByZXR1cm4ge1xuICAgIG9uQmVmb3JlUXVlcnk6IGFzeW5jICgpID0+IHRydWUsXG4gICAgb25UdXJuQ29tcGxldGU6IGFzeW5jICgpID0+IHt9LFxuICAgIHJlbmRlcjogKCkgPT4gbnVsbCxcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsS0FBS0EsQ0FBQyxHQUFHLEdBQUc7QUFFWixPQUFPLFNBQVNDLFlBQVlBLENBQUNDLEtBQUssRUFBRTtFQUNsQ0MsT0FBTyxFQUFFLE9BQU87RUFDaEJDLFdBQVcsRUFBRSxDQUFDQyxNQUFNLEVBQUVMLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQ00sSUFBSSxFQUFFTixDQUFDLEVBQUUsRUFBRSxHQUFHQSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEdBQUcsSUFBSTtFQUN6RE8sVUFBVSxFQUFFLE1BQU07RUFDbEJDLGFBQWEsRUFBRSxDQUFDQyxDQUFDLEVBQUUsTUFBTSxFQUFFLEdBQUcsSUFBSTtFQUNsQ0MsVUFBVSxFQUFFLENBQUNDLElBQUksRUFBRVgsQ0FBQyxFQUFFLEdBQUcsSUFBSTtBQUMvQixDQUFDLENBQUMsRUFBRTtFQUNGWSxhQUFhLEVBQUUsQ0FBQ0MsS0FBSyxFQUFFLE1BQU0sRUFBRUMsR0FBRyxFQUFFZCxDQUFDLEVBQUUsRUFBRWUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxHQUFHQyxPQUFPLENBQUMsT0FBTyxDQUFDO0VBQ3ZFQyxjQUFjLEVBQUUsQ0FBQ0gsR0FBRyxFQUFFZCxDQUFDLEVBQUUsRUFBRWtCLE9BQU8sRUFBRSxPQUFPLEVBQUUsR0FBR0YsT0FBTyxDQUFDLElBQUksQ0FBQztFQUM3REcsTUFBTSxFQUFFLEdBQUcsR0FBRyxJQUFJO0FBQ3BCLENBQUMsQ0FBQztFQUNBLE9BQU87SUFDTFAsYUFBYSxFQUFFLE1BQUFBLENBQUEsS0FBWSxJQUFJO0lBQy9CSyxjQUFjLEVBQUUsTUFBQUEsQ0FBQSxLQUFZLENBQUMsQ0FBQztJQUM5QkUsTUFBTSxFQUFFQSxDQUFBLEtBQU07RUFDaEIsQ0FBQztBQUNIIiwiaWdub3JlTGlzdCI6W119
|