@hhoangphuoc/escape-room-cli
Version:
A CLI for playing AI-generated escape room games. Install globally with: npm install -g @hhoangphuoc/escape-room-cli
7 lines (6 loc) • 11.4 kB
JavaScript
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
import { Box, Text } from 'ink';
const Instructions = () => {
return (_jsxs(Box, { flexDirection: "column", padding: 1, flexShrink: 1, children: [_jsx(Box, { marginBottom: 1, children: _jsx(Text, { bold: true, color: "magenta", children: "\uD83C\uDFAE AI ESCAPE ROOM - GAME INSTRUCTIONS" }) }), _jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [_jsx(Text, { bold: true, color: "yellow", children: "GAME OBJECTIVE:" }), _jsx(Text, { color: "white", children: "This game is designed to help you practice with using CLI-based experience with AI. Emerge yourself in this Terminal-like AI Escape Room and solve the unsolvable puzzles. Sometimes, challenging puzzles are created to test your creativity and problem-solving skills. But also, this terminal can help you practice and get familiar with AI CLI tools like Claude Code, Codex CLI, Gemini CLI, etc. without breaking your code based :D" }), _jsx(Text, { color: "white", children: "Practice it and challenge yourself in this AI-generated escape room, finding the correct password to escape." })] }), _jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: "white", children: '─'.repeat(150) }) }), _jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [_jsx(Text, { bold: true, color: "yellow", children: "LOGIN AND REGISTER:" }), _jsxs(Box, { flexDirection: "column", marginBottom: 1, rowGap: 0.25, children: [_jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: "green", children: " If you don't have an account: " }) }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "white", children: " 1. Start registering a new account with " }), _jsx(Text, { color: "cyan", children: "/register" })] }), _jsx(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: _jsx(Text, { color: "white", children: " 2. Your credentials will be saved in your local machine, so you can login again next time" }) }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "white", children: " 3. You can also login with " }), _jsx(Text, { color: "cyan", children: "/login" }), _jsx(Text, { children: " if you already have an account" })] })] }), _jsxs(Box, { flexDirection: "column", marginBottom: 1, rowGap: 0.25, children: [_jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: "green", children: " If you already have an account: " }) }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "white", children: " 1. Login again with " }), _jsx(Text, { color: "cyan", children: "/login" })] }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "white", children: " 2. Logout from your account with " }), _jsx(Text, { color: "cyan", children: "/logout" })] })] })] }), _jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: "gray", children: '─'.repeat(150) }) }), _jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [_jsx(Text, { bold: true, color: "yellow", children: "HOW TO PLAY:" }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "white", children: "1. Start a new game with " }), _jsx(Text, { color: "cyan", children: "/newgame" })] }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "white", children: "2. Look around your room with " }), _jsx(Text, { color: "cyan", children: "/look" })] }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "white", children: "3. Inspect objects with " }), _jsx(Text, { color: "cyan", children: "/inspect [object_name]" })] }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "white", children: "4. Solve puzzles with " }), _jsx(Text, { color: "cyan", children: "/guess [object_name] [answer]" })] }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "white", children: "5. Use " }), _jsx(Text, { color: "cyan", children: "/hint" })] }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "white", children: "6. Find the room password and escape with " }), _jsx(Text, { color: "cyan", children: "/password [password]" })] }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "white", children: "7. (Optional) End the game with " }), _jsx(Text, { color: "cyan", children: "/end-session" })] })] }), _jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: "gray", children: '─'.repeat(150) }) }), _jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [_jsx(Text, { bold: true, color: "yellow", children: "SCORING:" }), _jsx(Text, { color: "white", children: "\u2022 Faster completion = Higher score" }), _jsx(Text, { color: "white", children: "\u2022 Fewer cost and tokens used = Better ranking" }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "white", children: "\u2022 Check your ranking with " }), _jsx(Text, { color: "cyan", children: "/leaderboard" })] })] }), _jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [_jsx(Box, { marginBottom: 1, children: _jsx(Text, { bold: true, color: "yellow", children: "AI ASSISTANCE:" }) }), _jsx(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: _jsx(Text, { color: "white", children: "\u2022 Use natural language to get help (requires API key)" }) }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "white", children: "\u2022 Change AI model with " }), _jsx(Text, { color: "cyan", children: "/model" })] }), _jsx(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: _jsx(Text, { color: "white", children: "\u2022 Ask questions like \"What does this puzzle mean?\"" }) }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "white", children: "\u2022 Check your AI model-specific cost and token usage with " }), _jsx(Text, { color: "cyan", children: "/cost" }), _jsx(Text, { children: " and " }), _jsx(Text, { color: "cyan", children: "/usage" })] })] }), _jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: "gray", children: '─'.repeat(150) }) }), _jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [_jsx(Box, { marginBottom: 1, children: _jsx(Text, { bold: true, color: "yellow", children: "LIST OF COMMANDS:" }) }), _jsxs(Box, { flexDirection: "column", marginBottom: 1, rowGap: 0.25, children: [_jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: "green", children: "\uD83C\uDFAE Game Commands:" }) }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "cyan", children: `/newgame` }), _jsx(Text, { color: "white", children: " - Start a new escape room" })] }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "cyan", children: `/look` }), _jsx(Text, { color: "white", children: " - Examine the objects in the current room" })] }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "cyan", children: `/inspect [object]` }), _jsx(Text, { color: "white", children: " - Inspect an object closely" })] }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "cyan", children: `/guess [object] [answer]` }), _jsx(Text, { color: "white", children: " - Solve a puzzle" })] }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "cyan", children: `/password [password]` }), _jsx(Text, { color: "white", children: " - Try to escape" })] }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "cyan", children: `/hint` }), _jsx(Text, { color: "white", children: " - Get a overall helpful hint" })] }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "cyan", children: `/leaderboard` }), _jsx(Text, { color: "white", children: " - View top players" })] }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "redBright", children: `/end-session` }), _jsx(Text, { color: "white", children: " - End the current game session if you cannot solve the room." })] })] }), _jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: "gray", children: '─'.repeat(150) }) }), _jsxs(Box, { flexDirection: "column", marginBottom: 1, rowGap: 0.25, children: [_jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: "green", children: "\uD83E\uDD16 AI & System Commands:" }) }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "cyan", children: `/model` }), _jsx(Text, { color: "white", children: " - Change AI model" })] }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "cyan", children: `/history` }), _jsx(Text, { color: "white", children: " - Show the history of commands and responses" })] }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "cyan", children: `/usage` }), _jsx(Text, { color: "white", children: " - Show detailed AI usage with model breakdown" })] }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "cyan", children: `/cost` }), _jsx(Text, { color: "white", children: " - Show current session AI cost and token usage" })] }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "cyan", children: `/instructions` }), _jsx(Text, { color: "white", children: " - Show detailed game instructions" })] }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "cyan", children: `/help` }), _jsx(Text, { color: "white", children: " - Show all commands" })] })] }), _jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: "gray", children: '─'.repeat(150) }) }), _jsxs(Box, { flexDirection: "column", marginBottom: 1, rowGap: 0.25, children: [_jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: "green", children: "\uD83D\uDC64 Account Commands:" }) }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "cyan", children: `/login` }), _jsx(Text, { color: "white", children: " - Login to your account" })] }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "cyan", children: `/logout` }), _jsx(Text, { color: "white", children: " - Logout from your account" })] }), _jsxs(Box, { flexDirection: "row", marginBottom: 1, rowGap: 0.25, children: [_jsx(Text, { color: "cyan", children: `/register` }), _jsx(Text, { color: "white", children: " - Register a new account" })] })] }), _jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: "gray", children: '─'.repeat(150) }) })] }), _jsx(Box, { marginTop: 1, children: _jsx(Text, { bold: true, color: "blueBright", children: "\uD83D\uDCA1 TIP: Think creatively! AI-generated puzzles can be surprising and unique." }) })] }));
};
export default Instructions;