::nsmcp::ChatCompletionsBackend ::nsmcp::ChatCompletionsBackend describe init run streamClose streamData streamDrain streamHeaders streamOpen ::nsmcp::QuestionBackend ::nsmcp::QuestionBackend → reportingInstructions canonicalResult describe run toolCallResult ::nsmcp::ChatCompletionsBackend->::nsmcp::QuestionBackend ::nsmcp::CodexQuestionBackend ::nsmcp::CodexQuestionBackend describe run ::nsmcp::CodexQuestionBackend->::nsmcp::QuestionBackend ::nsmcp::Object ::nsmcp::Object dict getdef ::nsmcp::QuestionBackend->::nsmcp::Object

Class ::nsmcp::CodexQuestionBackend

::nsmcp::CodexQuestionBackend[i] create ... \
           [ -authenticator (default "::nsmcp::auth") ] \
           [ -authorizer (default "::nsmcp::authorization") ] \
           [ -bridgeDirectory (default "/work") ] \
           [ -bridgeHost (default "") ] \
           [ -bridgePort:integer (default "8766") ] \
           [ -bridgeSecretFile (default "") ] \
           [ -command:required command:required ] \
           [ -directory:required directory:required ] \
           [ -host (default "") ] \
           [ -launcher:required launcher:required ] \
           [ -maxResultBytes (default "131072") ] \
           [ -model (default "") ] \
           [ -registry (default "::nsmcp::tools") ] \
           [ -timeout (default "180") ] \
           [ -tokenFile:required tokenFile:required ] \
           [ -url:required url:required ]

Defined in /usr/local/ns/tcl/nsmcp/question-backend.tcl

Class Relations

  • class: ::nx::Class[i]
  • superclass: ::nsmcp::QuestionBackend[i]
::nx::Class create ::nsmcp::CodexQuestionBackend \
     -superclass ::nsmcp::QuestionBackend

Methods (to be applied on instances)

  • describe (scripted, public)

     <instance of nsmcp::CodexQuestionBackend[i]> describe

    Describe configured Codex question execution. Report model, timeout and local or bridge transport without starting a provider process.

    Returns:
    The backend metadata dictionary.

    Testcases:
    No testcase defined.
    return [dict create backend codex model ${:model} timeout ${:timeout} transport [expr {${:bridgeHost} eq "" ? "local-stdio" : "bridge-stdio"}]]
  • run (scripted, public)

     <instance of nsmcp::CodexQuestionBackend[i]> run question state \
        emit

    Execute a question through a temporary Codex runner. Forward continuation state and events, destroying the runner on both success and failure.

    Parameters:
    question (required)
    Question text supplied to the selected provider.
    state (required)
    Opaque retained provider continuation or scan state.
    emit (required)
    Event callback prefix; returning false requests cancellation.
    Returns:
    The runner's completion or continuation result.

    Testcases:
    No testcase defined.
    set runner [::nsmcp::CodexQuestionRun new -backend [self] -emit $emit]
    try {
        return [$runner run $question $state]
    } finally {
        $runner destroy
    }