Implement CLI commands and admin API endpoints
- Add bootstrap command with direct DB access for initial setup - Implement auth login/logout/status CLI commands - Implement user create/confirm-email CLI commands - Implement org create/list/add-site CLI commands - Add admin.orgs.* and admin.users.* API endpoints - Add password hashing utility with scrypt - Add token hashing and authentication utility - Add superuser runtime checks for admin endpoints - Wrap multi-step operations in transactions - Fix config file permissions (0o600) for security - Remove token display from status command - Add return statements to void handlers - Add reviq CLI command to devenv Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,9 +1,25 @@
|
||||
import type { LocalContext } from "../../context.js";
|
||||
import { buildCommand } from "@stricli/core";
|
||||
import { getConfigPath, readConfig } from "../../utils/config.js";
|
||||
|
||||
function status(this: LocalContext): void {
|
||||
console.log("Auth status command - Not implemented");
|
||||
console.log("This command will show current authentication status");
|
||||
async function status(this: LocalContext): Promise<void> {
|
||||
const config = await readConfig();
|
||||
|
||||
if (!config) {
|
||||
console.log("Not logged in");
|
||||
console.log(`\nConfig file: ${getConfigPath()} (not found)`);
|
||||
console.log(
|
||||
"\nRun 'reviq bootstrap' to create a superuser or 'reviq auth login' to authenticate.",
|
||||
);
|
||||
return;
|
||||
}
|
||||
|
||||
console.log("Authentication Status");
|
||||
console.log("=====================\n");
|
||||
console.log(`Email: ${config.email}`);
|
||||
console.log(`API URL: ${config.apiUrl}`);
|
||||
console.log(`Config file: ${getConfigPath()}`);
|
||||
console.log("Token: [configured]");
|
||||
}
|
||||
|
||||
export const statusCommand = buildCommand({
|
||||
@@ -11,5 +27,7 @@ export const statusCommand = buildCommand({
|
||||
parameters: {},
|
||||
docs: {
|
||||
brief: "Check authentication status",
|
||||
fullDescription:
|
||||
"Shows the current authentication status and config file location.",
|
||||
},
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user