Audio By Vocalize
Court of Appeal judge Katwa Kigen, a former lawyer for President William Ruto, has told the Judicial Service Commission (JSC) that he would remain neutral if election-related disputes involving the President reach the Supreme Court, where he is seeking appointment.
During his interview on Tuesday, April 28, Justice Kigen said concerns raised about his past legal representation of Ruto were understandable, but assured the panel he would be guided strictly by facts and the law.
“I can understand the concerns, and I just want to share that I will be fair and I would only deal with facts and the law,” he said.
He, however, faulted the JSC for not sharing in advance a letter outlining public concerns about his suitability, saying he would have responded in greater detail.
Justice Fatuma Sichale raised the matter, asking whether public fears about impartiality were justified.
Justice Kigen also said he felt unfairly singled out for representing Ruto in the past, arguing that many judges previously worked as advocates.
According to Justice Kigen, nearly 50 per cent of judges at the High Court and Court of Appeal were once lawyers and he is yet to see them getting the same treatment as him, while questioning why concerns raised only touch on one client.
“There are measures if anybody is concerned about my sitting on the bench and has justifiable cause, there are provisions for how that can be handled including recusal,” he said.
He added that mechanisms such as recusal exist where conflicts of interest arise. “The Supreme Court’s work is not limited to election petitions.”
Justice Kigen maintained that his professional relationship with President Ruto did not compromise his independence.
“Even as I am being put to task to answer that, I also want to insist; please take on board the unfairness of the question and concern just because of the person I represented…a criteria that is not applied to other candidates.”
He urged the commission to assess him on competence rather than his past appointment to the Court of Appeal. “I am not here for a promotion. I am here on whether I am competent,” he said.
Kigen also defended his legal experience, noting that he had represented clients across various courts and jurisdictions, including judges and advocates.
“I have the competence to identify issues, analyse them, research and determine what is required,” he said.
Justice Kigen was the second candidate to appear before the JSC as it seeks to fill a Supreme Court vacancy left by the death of Justice Mohamed Ibrahim on December 17, 2025.
Former IPOA chair Anne Makori was the first to be interviewed. Justice Joseph Sergon will appear before the JSC in the afternoon. Tomorrow, Justices Francis Tuiyott and Mohammed Warsame are scheduled to appear before the panel.
.std-banner-wrap {
max-width: 100%;
width: 100%;
position: relative;
margin: 2.5rem 0 2rem;
font-family: Georgia, ‘Times New Roman’, serif;
}
.std-top-rule {
display: flex;
height: 4px;
}
.std-top-rule .r1 {
background: #CC0000;
flex: 3;
}
.std-top-rule .r2 {
background: #C9A84C;
flex: 1;
}
.std-top-rule .r3 {
background: #0D0D0D;
flex: 6;
}
.std-banner {
background: #F9F5F0;
padding: 2rem 2.2rem 1.8rem;
position: relative;
overflow: hidden;
box-shadow: 0 4px 24px rgba(0, 0, 0, 0.10), 0 1px 0 #C9A84C;
border-left: 4px solid #CC0000;
}
.std-banner::before {
content: ‘S’;
position: absolute;
right: -1rem;
top: -2rem;
font-family: Georgia, serif;
font-size: 14rem;
font-weight: 900;
color: rgba(204, 0, 0, 0.04);
line-height: 1;
pointer-events: none;
user-select: none;
}
.std-eyebrow {
display: inline-flex;
align-items: center;
gap: 0.5rem;
font-size: 0.62rem;
font-weight: 700;
letter-spacing: 0.2em;
text-transform: uppercase;
color: #CC0000;
margin-bottom: 0.85rem;
font-family: Arial, sans-serif;
}
.std-eyebrow::before {
content: ”;
display: block;
width: 18px;
height: 1.5px;
background: #CC0000;
}
.std-banner-title {
font-family: Georgia, ‘Times New Roman’, serif;
font-size: clamp(1.3rem, 3.5vw, 1.75rem);
font-weight: 900;
color: #0D0D0D;
line-height: 1.2;
margin: 0 0 0.75rem;
letter-spacing: -0.02em;
}
.std-banner-title .std-hl {
color: #CC0000;
font-style: italic;
}
.std-divider {
display: flex;
align-items: center;
gap: 0.6rem;
margin-bottom: 0.9rem;
}
.std-divider::before,
.std-divider::after {
content: ”;
flex: 1;
height: 1px;
background: #d8d0c6;
}
.std-divider-dot {
width: 6px;
height: 6px;
border-radius: 50%;
background: #CC0000;
flex-shrink: 0;
}
.std-banner-body {
font-size: 0.97rem;
line-height: 1.7;
color: #2C2C2C;
font-weight: 400;
margin: 0 0 1.4rem;
font-family: Georgia, serif;
}
.std-banner-body strong {
font-weight: 700;
color: #0D0D0D;
}
.std-cta-row {
display: flex;
align-items: center;
gap: 1rem;
flex-wrap: wrap;
margin-bottom: 1.2rem;
}
.std-btn-subscribe {
display: inline-flex;
align-items: center;
gap: 0.6rem;
background: #CC0000;
color: #fff !important;
font-family: Arial, sans-serif;
font-size: 0.8rem;
font-weight: 700;
letter-spacing: 0.1em;
text-transform: uppercase;
padding: 0.72rem 1.5rem 0.72rem 1.3rem;
border: none;
cursor: pointer;
text-decoration: none !important;
border-bottom: none !important;
position: relative;
overflow: hidden;
transition: background 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease;
box-shadow: 0 4px 16px rgba(204, 0, 0, 0.3);
clip-path: polygon(0 0, calc(100% – 10px) 0, 100% 50%, calc(100% – 10px) 100%, 0 100%);
padding-right: 1.8rem;
}
.std-btn-subscribe:hover,
.std-btn-subscribe:focus,
.std-btn-subscribe:visited,
.std-btn-subscribe:active {
background: #A00000 !important;
color: #fff !important;
transform: translateY(-1px);
box-shadow: 0 6px 22px rgba(204, 0, 0, 0.4);
text-decoration: none !important;
border-bottom: none !important;
outline: none;
}
.std-btn-subscribe:active {
transform: translateY(0);
}
.std-btn-arrow {
display: inline-block;
font-size: 1rem;
line-height: 1;
transition: transform 0.18s ease;
}
.std-btn-subscribe:hover .std-btn-arrow {
transform: translateX(3px);
}
.std-dismiss {
font-size: 0.75rem;
color: #999;
background: none;
border: none;
border-bottom: 1px dashed #ccc;
padding: 0 0 1px;
cursor: pointer;
font-family: Georgia, serif;
letter-spacing: 0.03em;
transition: color 0.2s;
}
.std-dismiss:hover {
color: #333;
border-bottom-color: #333;
}
/* Payment logos */
.std-payment-row {
display: flex;
align-items: center;
gap: 0.45rem;
flex-wrap: wrap;
padding-top: 1rem;
border-top: 1px solid #e0d9d0;
margin-bottom: 0.7rem;
}
.std-pay-label {
font-size: 0.6rem;
color: #aaa;
letter-spacing: 0.14em;
text-transform: uppercase;
font-family: Arial, sans-serif;
margin-right: 0.2rem;
white-space: nowrap;
}
.std-pay-badge {
display: inline-flex;
align-items: center;
justify-content: center;
height: 24px;
padding: 0 0.5rem;
border-radius: 3px;
border: 1px solid #e0d7ce;
background: #fff;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}
/* M-Pesa */
.std-mpesa-text {
font-family: Arial, sans-serif;
font-size: 0.7rem;
font-weight: 900;
}
.std-mpesa-m {
color: #39b74a;
}
.std-mpesa-dash {
color: #db3939;
}
.std-mpesa-p {
color: #39b74a;
}
/* Visa */
.std-visa-text {
font-family: ‘Times New Roman’, Times, serif;
font-size: 0.82rem;
font-weight: 900;
font-style: italic;
color: #1a1f71;
letter-spacing: -0.03em;
}
/* Mastercard */
.std-mc-wrap {
position: relative;
width: 28px;
height: 16px;
}
.std-mc-left {
width: 16px;
height: 16px;
border-radius: 50%;
background: #eb001b;
position: absolute;
left: 0;
top: 0;
}
.std-mc-right {
width: 16px;
height: 16px;
border-radius: 50%;
background: #f79e1b;
position: absolute;
right: 0;
top: 0;
mix-blend-mode: multiply;
}
/* Airtel Money */
.std-airtel-text {
font-family: Arial, sans-serif;
font-size: 0.64rem;
font-weight: 800;
}
.std-airtel-a {
color: #ec2427;
;
}
.std-airtel-m {
color: #dd3436;
font-weight: 600;
}
/* Equitel */
.std-equitel-text {
font-family: Arial, sans-serif;
font-size: 0.6rem;
font-weight: 700;
color: #003087;
letter-spacing: 0.02em;
}
.std-equitel-eq {
color: #e2001a;
}
/* Trust strip */
.std-trust-strip {
display: flex;
align-items: center;
gap: 0.45rem;
flex-wrap: wrap;
}
.std-trust-strip .std-shield {
width: 11px;
height: 11px;
fill: #C9A84C;
flex-shrink: 0;
}
.std-trust-strip span {
font-size: 0.67rem;
color: #aaa;
letter-spacing: 0.03em;
font-family: Arial, sans-serif;
}
.std-trust-strip .std-dot {
width: 3px;
height: 3px;
border-radius: 50%;
background: #ccc;
flex-shrink: 0;
}
/* Bottom rule */
.std-bottom-rule {
height: 2px;
background: linear-gradient(to right, #C9A84C, #CC0000, #0D0D0D);
}
/* Entrance animation */
@keyframes stdSlideUp {
from {
opacity: 0;
transform: translateY(20px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.std-banner-wrap {
animation: stdSlideUp 0.5s cubic-bezier(0.22, 1, 0.36, 1) both;
}
Support Independent Journalism
Stand With Bold Journalism.
Stand With The Standard.
Continue
→
Pay via
Secure Payment
Kenya’s most trusted newsroom since 1902
Follow The Standard on
Court of Appeal judge Katwa Kigen, a former lawyer for President William Ruto, has told the Judicial Service Commission (JSC) that he would remain neutral if election-related disputes involving the President reach the Supreme Court, where he is seeking appointment.
During his interview on Tuesday, April 28, Justice Kigen said concerns raised about his past legal representation of Ruto were understandable, but assured the panel he would be guided strictly by facts and the law.
“I can understand the concerns, and I just want to share that I will be fair and I would only deal with facts and the law,” he said.
He, however, faulted the JSC for not sharing in advance a letter outlining public concerns about his suitability, saying he would have responded in greater detail.
Justice Fatuma Sichale raised the matter, asking whether public fears about impartiality were justified.
Justice Kigen also said he felt unfairly singled out for representing Ruto in the past, arguing that many judges previously worked as advocates.
According to Justice Kigen, nearly 50 per cent of judges at the High Court and Court of Appeal were once lawyers and he is yet to see them getting the same treatment as him, while questioning why concerns raised only touch on one client.
“There are measures if anybody is concerned about my sitting on the bench and has justifiable cause, there are provisions for how that can be handled including recusal,” he said.
He added that mechanisms such as recusal exist where conflicts of interest arise. “The Supreme Court’s work is not limited to election petitions.”
Justice Kigen maintained that his professional relationship with President Ruto did not compromise his independence.
“Even as I am being put to task to answer that, I also want to insist; please take on board the unfairness of the question and concern just because of the person I represented…a criteria that is not applied to other candidates.”
He urged the commission to assess him on competence rather than his past appointment to the Court of Appeal. “I am not here for a promotion. I am here on whether I am competent,” he said.
Kigen also defended his legal experience, noting that he had represented clients across various courts and jurisdictions, including judges and advocates.
“I have the competence to identify issues, analyse them, research and determine what is required,” he said.
Stay informed. Subscribe to our newsletter
Justice Kigen was the second candidate to appear before the JSC as it seeks to fill a Supreme Court vacancy left by the death of Justice Mohamed Ibrahim on December 17, 2025.
Former IPOA chair Anne Makori was the first to be interviewed. Justice Joseph Sergon will appear before the JSC in the afternoon. Tomorrow, Justices Francis Tuiyott and Mohammed Warsame are scheduled to appear before the panel.
.std-banner-wrap {
max-width: 100%;
width: 100%;
position: relative;
margin: 2.5rem 0 2rem;
font-family: Georgia, ‘Times New Roman’, serif;
}
.std-top-rule {
display: flex;
height: 4px;
}
.std-top-rule .r1 {
background: #CC0000;
flex: 3;
}
.std-top-rule .r2 {
background: #C9A84C;
flex: 1;
}
.std-top-rule .r3 {
background: #0D0D0D;
flex: 6;
}
.std-banner {
background: #F9F5F0;
padding: 2rem 2.2rem 1.8rem;
position: relative;
overflow: hidden;
box-shadow: 0 4px 24px rgba(0, 0, 0, 0.10), 0 1px 0 #C9A84C;
border-left: 4px solid #CC0000;
}
.std-banner::before {
content: ‘S’;
position: absolute;
right: -1rem;
top: -2rem;
font-family: Georgia, serif;
font-size: 14rem;
font-weight: 900;
color: rgba(204, 0, 0, 0.04);
line-height: 1;
pointer-events: none;
user-select: none;
}
.std-eyebrow {
display: inline-flex;
align-items: center;
gap: 0.5rem;
font-size: 0.62rem;
font-weight: 700;
letter-spacing: 0.2em;
text-transform: uppercase;
color: #CC0000;
margin-bottom: 0.85rem;
font-family: Arial, sans-serif;
}
.std-eyebrow::before {
content: ”;
display: block;
width: 18px;
height: 1.5px;
background: #CC0000;
}
.std-banner-title {
font-family: Georgia, ‘Times New Roman’, serif;
font-size: clamp(1.3rem, 3.5vw, 1.75rem);
font-weight: 900;
color: #0D0D0D;
line-height: 1.2;
margin: 0 0 0.75rem;
letter-spacing: -0.02em;
}
.std-banner-title .std-hl {
color: #CC0000;
font-style: italic;
}
.std-divider {
display: flex;
align-items: center;
gap: 0.6rem;
margin-bottom: 0.9rem;
}
.std-divider::before,
.std-divider::after {
content: ”;
flex: 1;
height: 1px;
background: #d8d0c6;
}
.std-divider-dot {
width: 6px;
height: 6px;
border-radius: 50%;
background: #CC0000;
flex-shrink: 0;
}
.std-banner-body {
font-size: 0.97rem;
line-height: 1.7;
color: #2C2C2C;
font-weight: 400;
margin: 0 0 1.4rem;
font-family: Georgia, serif;
}
.std-banner-body strong {
font-weight: 700;
color: #0D0D0D;
}
.std-cta-row {
display: flex;
align-items: center;
gap: 1rem;
flex-wrap: wrap;
margin-bottom: 1.2rem;
}
.std-btn-subscribe {
display: inline-flex;
align-items: center;
gap: 0.6rem;
background: #CC0000;
color: #fff !important;
font-family: Arial, sans-serif;
font-size: 0.8rem;
font-weight: 700;
letter-spacing: 0.1em;
text-transform: uppercase;
padding: 0.72rem 1.5rem 0.72rem 1.3rem;
border: none;
cursor: pointer;
text-decoration: none !important;
border-bottom: none !important;
position: relative;
overflow: hidden;
transition: background 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease;
box-shadow: 0 4px 16px rgba(204, 0, 0, 0.3);
clip-path: polygon(0 0, calc(100% – 10px) 0, 100% 50%, calc(100% – 10px) 100%, 0 100%);
padding-right: 1.8rem;
}
.std-btn-subscribe:hover,
.std-btn-subscribe:focus,
.std-btn-subscribe:visited,
.std-btn-subscribe:active {
background: #A00000 !important;
color: #fff !important;
transform: translateY(-1px);
box-shadow: 0 6px 22px rgba(204, 0, 0, 0.4);
text-decoration: none !important;
border-bottom: none !important;
outline: none;
}
.std-btn-subscribe:active {
transform: translateY(0);
}
.std-btn-arrow {
display: inline-block;
font-size: 1rem;
line-height: 1;
transition: transform 0.18s ease;
}
.std-btn-subscribe:hover .std-btn-arrow {
transform: translateX(3px);
}
.std-dismiss {
font-size: 0.75rem;
color: #999;
background: none;
border: none;
border-bottom: 1px dashed #ccc;
padding: 0 0 1px;
cursor: pointer;
font-family: Georgia, serif;
letter-spacing: 0.03em;
transition: color 0.2s;
}
.std-dismiss:hover {
color: #333;
border-bottom-color: #333;
}
/* Payment logos */
.std-payment-row {
display: flex;
align-items: center;
gap: 0.45rem;
flex-wrap: wrap;
padding-top: 1rem;
border-top: 1px solid #e0d9d0;
margin-bottom: 0.7rem;
}
.std-pay-label {
font-size: 0.6rem;
color: #aaa;
letter-spacing: 0.14em;
text-transform: uppercase;
font-family: Arial, sans-serif;
margin-right: 0.2rem;
white-space: nowrap;
}
.std-pay-badge {
display: inline-flex;
align-items: center;
justify-content: center;
height: 24px;
padding: 0 0.5rem;
border-radius: 3px;
border: 1px solid #e0d7ce;
background: #fff;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}
/* M-Pesa */
.std-mpesa-text {
font-family: Arial, sans-serif;
font-size: 0.7rem;
font-weight: 900;
}
.std-mpesa-m {
color: #39b74a;
}
.std-mpesa-dash {
color: #db3939;
}
.std-mpesa-p {
color: #39b74a;
}
/* Visa */
.std-visa-text {
font-family: ‘Times New Roman’, Times, serif;
font-size: 0.82rem;
font-weight: 900;
font-style: italic;
color: #1a1f71;
letter-spacing: -0.03em;
}
/* Mastercard */
.std-mc-wrap {
position: relative;
width: 28px;
height: 16px;
}
.std-mc-left {
width: 16px;
height: 16px;
border-radius: 50%;
background: #eb001b;
position: absolute;
left: 0;
top: 0;
}
.std-mc-right {
width: 16px;
height: 16px;
border-radius: 50%;
background: #f79e1b;
position: absolute;
right: 0;
top: 0;
mix-blend-mode: multiply;
}
/* Airtel Money */
.std-airtel-text {
font-family: Arial, sans-serif;
font-size: 0.64rem;
font-weight: 800;
}
.std-airtel-a {
color: #ec2427;
;
}
.std-airtel-m {
color: #dd3436;
font-weight: 600;
}
/* Equitel */
.std-equitel-text {
font-family: Arial, sans-serif;
font-size: 0.6rem;
font-weight: 700;
color: #003087;
letter-spacing: 0.02em;
}
.std-equitel-eq {
color: #e2001a;
}
/* Trust strip */
.std-trust-strip {
display: flex;
align-items: center;
gap: 0.45rem;
flex-wrap: wrap;
}
.std-trust-strip .std-shield {
width: 11px;
height: 11px;
fill: #C9A84C;
flex-shrink: 0;
}
.std-trust-strip span {
font-size: 0.67rem;
color: #aaa;
letter-spacing: 0.03em;
font-family: Arial, sans-serif;
}
.std-trust-strip .std-dot {
width: 3px;
height: 3px;
border-radius: 50%;
background: #ccc;
flex-shrink: 0;
}
/* Bottom rule */
.std-bottom-rule {
height: 2px;
background: linear-gradient(to right, #C9A84C, #CC0000, #0D0D0D);
}
/* Entrance animation */
@keyframes stdSlideUp {
from {
opacity: 0;
transform: translateY(20px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.std-banner-wrap {
animation: stdSlideUp 0.5s cubic-bezier(0.22, 1, 0.36, 1) both;
}
By Fred Kagonye
