jackwener/OpenCLI · info · AuthRequiredError
Waiting for Jike login: ${detail}
Error message
Waiting for Jike login: ${detail} What it means
AuthRequiredError with domain 'web.okjike.com' thrown by the jike login poll handler. The poll calls requireJikeIdentity(page); if that throws (identity not yet available), the error is converted into an AuthRequiredError whose detail is 'Waiting for Jike login: <original message>'. It signals that the user has not completed login in the automated browser yet.
Source
Thrown at clis/jike/auth.js:26
// from the /1.0/users/profile endpoint rather than from the token or a cookie.
async function verifyJikeIdentity(page) {
await page.goto('https://web.okjike.com/');
await page.wait(2);
return requireJikeIdentity(page);
}
registerSiteAuthCommands({
site: 'jike',
domain: 'web.okjike.com',
loginUrl: 'https://web.okjike.com/login',
columns: ['user_id', 'screen_name', 'username'],
verify: verifyJikeIdentity,
poll: async (page) => {
try {
return await requireJikeIdentity(page);
} catch (error) {
const detail = error instanceof Error ? error.message : String(error);
throw new AuthRequiredError(
'web.okjike.com',
detail ? `Waiting for Jike login: ${detail}` : 'Waiting for Jike login',
);
}
},
});
View on GitHub (pinned to 49907e53dc)
Solutions
- Complete the login in the opened browser window; the poll succeeds once requireJikeIdentity passes
- Finish any SMS/captcha verification step that is blocking identity establishment
- If login appears done but the error persists, inspect the inner detail message (after 'Waiting for Jike login:') for the exact failing check
- Restart the login flow if the browser or page was closed early
- Verify the profile retains the Jike session cookie before retrying
Example fix
// before
opencli jike login // poll: AuthRequiredError 'Waiting for Jike login: not signed in'
// after: user completes login; poll returns identity
{ ...identity } Defensive patterns
Strategy: try-catch
Validate before calling
// before polling, confirm the user can reach the logged-in surface
await page.goto('https://web.okjike.com/');
if (/login|signin/i.test(page.url())) console.log('Not signed in yet — complete login in the browser'); Type guard
function isWaitingForJikeLogin(e) {
return e instanceof Error && /Waiting for Jike login/.test(e.message);
} Try / catch
try {
await poll();
} catch (e) {
if (isWaitingForJikeLogin(e)) {
// expected while the user is logging in: keep waiting / prompt user
console.warn(e.message.replace('Waiting for Jike login: ', 'hint: '));
} else throw e;
} Prevention
- Complete the entire Jike login flow (including any SMS verification) before expecting poll success
- Do not close or navigate the automated browser during login
- Read the inner detail after 'Waiting for Jike login:' to diagnose persistent failures
- Use a persistent profile so a prior Jike session short-circuits the login flow
When it happens
Trigger: Running the jike login command while the user has not finished logging in at web.okjike.com; requireJikeIdentity fails each poll tick because the session/identity markers are absent.
Common situations: User mid-typing credentials or completing SMS/captcha during interactive login; login completed but identity check runs before the page state updates; browser closed before login finished; Jike session cookie domain/path mismatch.
Related errors
- Waiting for Jimeng login
- Waiting for Ke lianjia_token cookie
- Waiting for Kimi auth cookies
- Waiting for LinkedIn li_at cookie
- Waiting for Nowcoder login
AI-assisted analysis of jackwener/OpenCLI@49907e53dc (2026-08-29).
Data as JSON: /api/errors/17ca940cecf67a29.
Report an issue: GitHub.