from nolma import Nolma
nolma = Nolma(api_key="nm_live_abc123")
@nolma.session(name="my-agent")
async def agent(user_input: str):
session_id = nolma.session_id
output = await llm_call(user_input)
user_action = show_to_user(output)
if user_action == "used":
await nolma.signal_async(session_id, "accepted")
elif user_action == "modified":
chars_changed = count_edits(output, user_action.text)
await nolma.signal_async(
session_id, "edited", edit_distance=chars_changed
)
elif user_action == "regenerate":
await nolma.signal_async(session_id, "regenerated")